在每个文件顶部添加“@jsx react.dom”的功能是什么?
what is the functionality of "@jsx react.dom" adding in top of every file?
什么是功能:
/** @jsx React.DOM */
我看到这一行被添加到我当前项目中的这么多文件之上,但我很困惑为什么要添加它。 :(
自 React v0.12 后,不再有 /** @jsx React.DOM */
、see here。
他们称之为"The @jsx Pragma"。它用于让您指定 React Transformer 的输出应该是什么样子。
因此,过去,当将 JSX 表达式编译为 JavaScript 时,它们默认为 React.createElement()
调用。但是您可以使用 /** @jsx React.DOM */
开头的注释来修改此行为。我们的想法是使转换更通用,并允许您指定输出的外观。
不再是了。 React 团队在他们的 v0.12 发布说明中分享:
We have wanted to do this since before we even open sourced React. No more /** @jsx React.DOM */
!. The React specific JSX transform assumes you have React in scope (which had to be true before anyway).
什么是功能:
/** @jsx React.DOM */
我看到这一行被添加到我当前项目中的这么多文件之上,但我很困惑为什么要添加它。 :(
自 React v0.12 后,不再有 /** @jsx React.DOM */
、see here。
他们称之为"The @jsx Pragma"。它用于让您指定 React Transformer 的输出应该是什么样子。
因此,过去,当将 JSX 表达式编译为 JavaScript 时,它们默认为 React.createElement()
调用。但是您可以使用 /** @jsx React.DOM */
开头的注释来修改此行为。我们的想法是使转换更通用,并允许您指定输出的外观。
不再是了。 React 团队在他们的 v0.12 发布说明中分享:
We have wanted to do this since before we even open sourced React. No more
/** @jsx React.DOM */
!. The React specific JSX transform assumes you have React in scope (which had to be true before anyway).