我正在 JSBin 上使用 ReactJS 框架.

我注意到,如果我的组件名称以小写字母开头,则它不起作用。

例如以下内容不会呈现:

var fml = React.createClass({ 
  render: function () { 
    return <a href='google.com'>Go</a> 
  } 
}); 
 
React.render(<fml />, document.body); 

但是当我用 Fml 替换 fml 时,它就会渲染。

我无法以小写字母开头标签有什么原因吗?

请您参考如下方法:

在 JSX 中,小写标签名称被视为 HTML 标签。但是,带有点(属性访问器)的小写标签名称则不然。

参见HTML tags vs React Components .

  • <component />编译为React.createElement('component') (html标签)
  • <Component />编译为React.createElement(Component)
  • <obj.component />编译为React.createElement(obj.component)


评论关闭
IT虾米网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!