Javascript 为什么React.DOM没有定义?
反应16.5.2Javascript 为什么React.DOM没有定义?,javascript,reactjs,Javascript,Reactjs,反应16.5.2 我正在通过一本书学习React,并尝试使用“清晰”React的工厂(即不在JSX中)。我尝试使用React建造的工厂之一,但我遇到了问题: (() => { const my_h1 = React.DOM.h1(null,"Stuff") // TypeError: Cannot read property 'h1' of undefined ReactDOM.render(my_h1,document.getElementById('root')
我正在通过一本书学习React,并尝试使用“清晰”React的工厂(即不在JSX中)。我尝试使用React建造的工厂之一,但我遇到了问题:
(() => {
const my_h1 = React.DOM.h1(null,"Stuff") // TypeError: Cannot read property 'h1' of undefined
ReactDOM.render(my_h1,document.getElementById('root'))
})()
为什么会这样
UPD
这是使用React和Redux学习React功能性Web开发的页面:
您必须使用
React.createElement
来创建元素,而不是React.DOM
(() => {
const my_h1 = React.createElement('h1',null,"Stuff")
ReactDOM.render(React.createElement(my_h1),document.getElementById('root'))
})()
此外,对于React中的最新版本,React.DOM不再有效,您需要在该脚本中包含DOM工厂
<script src="https://unpkg.com/react-dom-factories@1.0.0/index.js"></script>
此更改是在2017年6月15.6.0版前后引入的。您试图实现的是:
(()=>{
const my_h1=React.createElement(“h1”,null,“Stuff”);
render(my_h1,document.getElementById('root');
})()
我在发布我的问题之前尝试了它,但得到了错误:TypeError:ReactDOM.h1不是一个函数。似乎您要做的是创建一个元素。在这种情况下,您将使用React.createElement而不是reactDom我知道React.createElement,我对此没有问题。我添加了UPD部分。更新了答案乐于帮助:-)问题是React.DOM不存在(但是ReactDOM是的,它不一样),ReactDOM.h1也不存在。如果要创建元素,应使用React中的createElement。这里有ReactDOM可用的方法:我添加了UPD部分。我知道React.createElement
,我对它没有问题。我添加了UPD部分。
ReactDOMFactories.h1(null, "Hello World!")