【发布时间】:2015-01-29 20:07:51
【问题描述】:
我们正在使用一个使用自定义元素的组件库。这要求我们在 JSX 中使用自定义 HTML 标签。举个很简单的例子:
var App = React.createClass({
render: function() {
return <niner/>;
}
});
React.render(
<App/>,
document.getElementById('content')
);
在这种特殊情况下,我只需要 React 输出一个 niner 标签,而不需要它尝试对它做任何特别的事情。我故意没有更多的 React 组件。
根据JSX in depth,
React 的 JSX 使用大写与小写的约定来区分本地组件类和 HTML 标签。
这让我相信 ReactJS 只会把 <niner/> 当作一个普通的 HTML 标签,而不是被它卡住。但是,当我运行上面的代码时,出现以下错误:
Uncaught TypeError: Cannot read property 'replace' of undefined 10734305_1719965068228170_722481775_n.js:94
createSourceCodeErrorMessage 10734305_1719965068228170_722481775_n.js:141
transformCode 10734305_1719965068228170_722481775_n.js:187
run 10734305_1719965068228170_722481775_n.js:242
check 10734305_1719965068228170_722481775_n.js:295
loadScripts 10734305_1719965068228170_722481775_n.js:324
runScripts
我需要做一些魔法才能让它工作吗?谢谢。
【问题讨论】:
标签: javascript reactjs react-jsx