我练习反应
我遇到了这个错误:Uncaught ReferenceError: ReactDOM is not defined
当铬控制台类型ReactDOM.unmountComponentAtNode(document.body)
ReactDOM.unmountComponentAtNode:未捕获的ReferenceError:ReactDOM没有定义
请帮我查一下这个问题
我试穿的代码JSbin和运行良好,所以我认为这是webpack的问题,但我不知道。
而我注意到有很多方法写React.render
部分当我谷歌,有什么区别?哪一个是正确的?
React.render(<App name='Vipul' />,document.body);
ReactDOM.render(<App name='Vipul' />,document.body);
React.renderComponents(<App name='Vipul' />,document.body);
这里是我的代码:
main.jsx
import React from 'react';
import ReactDOM from 'react-dom';
console.log('Start')
var App = React.createClass({
render: function(){
console.log('render');
return <h1 onClick={this.toggleState}>Hello</h1>
},
componentWillUnmount: function(){
//在console執行 ReactDOM.unmountComponentAtNode(document.body)
console.log('componentWillUnmount');
},
toggleState: function(){
this.setState({status: !this.state.status})
}
});
ReactDOM.render(<App name='Vipul' />,document.body);
webpack.config.js
var WebpackNotifierPlugin = require('webpack-notifier');
module.exports = {
entry: "./src/main.js",
output: {
filename: "./dist/bundle.js"
// filename: "./public/dist/bundle.js"
},
plugins: [
new WebpackNotifierPlugin()
],
module: {
loaders: [
{
test: /\.jsx?$/,
exclude: /node_modules/,
loader: "babel-loader",
query: {
presets: ['es2015', 'react']
}
}
]
},devtool: 'source-map'
};
谢谢。我明白了你的观点。如果我在我的代码中使用'setTimeout(()=> {0} {} {}}。它运作良好!谢谢 – user2492364