我从Preact应用程序开始。 documentation说
不是在代码中声明@jsx pragma,而是在 .babelrc
中全局配置它:
对于Babel 5及之前:
{ "jsxPragma": "h" }
对于巴别塔6:
{
"plugins": [
["transform-react-jsx", { "pragma":"h" }]
]
}
我是Preact世界的新手,想要了解为什么我们需要创建这个文件&什么是jsx pragma?
答案 0 :(得分:2)
pragma是一个注释(此处/** @jsx h */
)放在包含一些JSX的文件的顶部,告诉JSX转换器要调用哪个函数来创建虚拟dom的每个元素。 Preact使用hyperscript,这就是你需要使用h
pragma的原因。 Preact建议创建这个文件,以便babel自己处理pragma,而无需将其添加到每个文件中。这样你就不会忘记把它放在一个文件上。
您建议您阅读WTF is JSX,如果您想了解有关JSX的所有信息,这是一篇基本文章。