从错误描述中,我了解render可以返回类和字符串,但不能返回已经创建的对象。但是,有解决方法吗?
const Hello = React.createElement("div",{},"Hello");
var MyComp = React.createClass({
render:function(){
return(<Hello/>)
}
})
作为回报的错误: 元素类型无效:期望一个字符串(用于内置组件)或一个类/函数(用于复合组件)但得到:object
答案 0 :(得分:0)
解决方法是你需要在Reacts组件中创建一个div,然后才能渲染它。
我们将JavaScript对象中的一些方法传递给React.createClass()以创建一个新的React组件。这些方法中最重要的部分称为render,它返回一个React组件树,最终将呈现给HTML。
var Hello = React.createClass({
render: function() {
return (
React.createElement('div', {},
"Hello, world! "
)
);
}
});
var MyComp = React.createClass({
render:function(){
return(<Hello />)
}
})
ReactDOM.render(<MyComp />, document.getElementById('app'));
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/0.14.8/react.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/0.14.8/react-dom.js"></script>
<div id="app"></div>