考虑下面的react代码
main.js文件为:
import React from 'react';
import ReactDOM from 'react-dom';
import Maincontainner from './maincontainner';
ReactDOM.render(
<div>
<h1>News</h1>
<Maincontainner/>
</div>,
document.getElementById('content')
);
它的组件是:
import React from 'react';
export default class Maincontainner extends React.Component{
render() {
console.log("I am here");
return (<dev> Salman is here </dev>);
}
}
问题是,当我运行应用程序时,我在控制台中遇到以下错误:
Uncaught TypeError: _reactDom2.default.render is not a function
下面是依赖项
"dependencies": {
"webpack": "^1.12.14",
"webpack-dev-server": "^1.14.1",
"react" : "^0.14.7",
"react-dom" : "^0.14.7",
"babel-cli": "^6.5.1",
"babel-preset-es2015": "^6.5.0",
"babel-loader": "^6.2.1",
"babel-preset-react": "^6.3.13",
"babelify": "^7.2.0"
}
更新: webpack.config.json
module.exports={
entry: './js/main.js',
output:{
filename: 'bundle.js'
},
module: {
loaders: [
{
test: /.js?$/,
loader: 'babel',
exclude: /node_modules/,
query: {
presets: ['es2015', 'react']
}
}
]
},
devServer:{
port:3000
}
};
我还有一个.babelrc文件
{
"presets": ["es2015", "react"]
}
发布于 2018-04-26 19:56:14
最初,我是这样做的。
import React from 'react-dom';
import ReactDom from 'react-dom';
很快,我意识到我做错了什么,并按如下方式更新了上面的声明。
import React from 'react';
import ReactDom from 'react-dom';
希望能有所帮助。
发布于 2016-07-21 01:12:11
将react和react-dom更新为"^15.2.1“适合我。我希望它能对你有所帮助。
发布于 2019-02-18 02:46:15
在我的案例中,问题是:
import render from "react-dom";
vs
import { render } from "react-dom";
我必须用第二种方法来做,否则我会得到那个错误。会有兴趣知道为什么,因为它们看起来都是有效的
https://stackoverflow.com/questions/36376146
复制相似问题