为什么第一个渲染工作但不是第二个?
// load react library
var React = require('react');
var ReactDOM = require('react-dom');
//build first component
/*
StorePicker
*/
var StorePicker = React.createClass({
render : function(){
return (
<div>
<p> </p>
<p>hi</p>
<p>and this is another</p>
</div>
)
}
})
ReactDOM.render(<StorePicker/>,document.querySelector('#main'));
ReactDOM.render(<StorePicker/>,document.getElementById('#main'));
我得到的错误是:
Uncaught Error: Invariant Violation: _registerComponent(...): Target container is not a DOM element.
这没有任何意义,因为它适用于第一种情况
答案 0 :(得分:3)
getElementById
使用不带#
前缀的ID作为参数。尝试:
ReactDOM.render(<StorePicker/>, document.getElementById('main'));