react-deep-dive-example
react-deep-dive-example copied to clipboard
[문의]p.120,124문의 드립니다.
p.120에는 JSXMemberExpresstion이 JSXNamespacedName과 이어서 사용하는것이 불가능하다고 되어있는데.
// 불가능하다
function invalid() {
return <foo:bar.baz></foo:bar.baz>
}
p.124에는 JSX문법 자체로는 유효하다는게 어떤뜻인가요??
function ComponentC() {
return <A:B.C></A:B.C>
}
@SeokhyunHong1510 님 안녕하세요! 답변이 늦어서 죄송합니다.
문법 자체로 유효하다는 뜻은 jsx 명세에서는 허용하지만 리액트에서는 불가능하다
라는 뜻입니다.
https://facebook.github.io/jsx/#prod-JSXNamespacedName
위 jsx 공식 문서를 보시면 아시겠지만 JSXNamespacedName 라하여 JSXIdentifier
:JSXIdentifier
를 허용하고 있습니다.
다만 리액트에서는 딱히 필요가 없어서 채용하지 않았던 히스토리가 있습니다. https://github.com/facebook/jsx/issues/13#issuecomment-54373080 (내부적으로는 사용했던 것으로 보입니다.)
감사합니다!