ReactDom未定义

问题描述 投票:11回答:3

我正在使用React与Webpack和Babel。我收到运行时错误:

未捕获的ReferenceError:未定义ReactDom

我的反应版本是:

"devDependencies": {
   "phantomjs-polyfill": "0.0.2",
   "react-addons-test-utils": "^0.14.8"
 },    
 "dependencies": {
   "react": "^0.14.7",
   "react-dom": "^0.14.7"
 },

我的代码是:

import React from 'react';
import ReactDOM from 'react-dom';
import Main from './components/main';

ReactDom.render(<Main />, document.getElementById('root'));

我究竟做错了什么?

javascript reactjs webpack babeljs react-dom
3个回答
32
投票

你有ReactDOM但你没有ReactDom(区分大小写)

ReactDOM.render(<Main />, document.getElementById('root'));

1
投票

ReactDOM!= ReactDom。你可以做两件事来解决这个问题。

import React from 'react';
import ReactDOM from 'react-dom'; // you used 'react-dom' as 'ReactDOM'
import Main from './components/main';

ReactDom.render(<Main />, document.getElementById('root')); // you referred to it as 'ReactDom' which is wrong.

因为qazxsw poi!= qazxsw poi。因此,您需要修复其中一个位置,以便两个位置具有相同的大小写相同的名称。

推荐的解决方案是,

ReactDOM

或者你可以做到,

ReactDom

-1
投票

只需用import React from 'react'; import ReactDOM from 'react-dom'; // this is recommended import Main from './components/main'; ReactDOM.render(<Main />, document.getElementById('root')); 替换import React from 'react'; import ReactDom from 'react-dom'; import Main from './components/main'; ReactDom.render(<Main />, document.getElementById('root')); (在Dom中,用小写字母写成)(注意你需要以大写形式编写ReactDom),你的问题将得到解决。

© www.soinside.com 2019 - 2024. All rights reserved.