Pio*_*rak 9 ecmascript-6 reactjs babeljs
转换后这段代码不起作用
import React from 'react';
import ReactDOM from 'react-dom';
import firstLow from './moniesApp.js';
ReactDOM.render(<firstLow />, document.getElementById('content'));
但确实如此
import React from 'react';
import ReactDOM from 'react-dom';
import FirstHigh from './moniesApp.js';
ReactDOM.render(<FirstHigh />, document.getElementById('content'));
在第一种情况下,巴贝尔生产
_reactDom2.default.render(_react2.default.createElement('firstLow', null), document...Run Code Online (Sandbox Code Playgroud)
并在页面上有一个空<firstLow data-reactroot><firstLow/>元素呈现.
在第二种情况下
_reactDom2.default.render(_react2.default.createElement(_moniesApp2.default, null), document...Run Code Online (Sandbox Code Playgroud)
它的工作原理.我的组件被渲染.
这是怎么回事?
在React中,Component名称以大写字母开头.小写的JSX标记表示文字HTML标记.这是React规范的一部分.
这就是为什么<foo>被翻译成createElement('foo'),而<Foo>收益率createElement(module.Foo).
您应该用大写字母命名组件.没什么可做的.