【发布时间】:2016-10-11 12:45:42
【问题描述】:
我有以下 HTML 结构:
我在网站加载时加载了一个Content 组件:
ReactDOM.render(React.createElement(Content), document.getElementById('content'));
在这个组件内部,我想用一些道具将另一个组件放入导航 div,例如:
var Content = React.createClass({
getInitialState: function () {
return {
isUserSignedIn: this.isUserSignedIn(),
role: undefined
};
},
isUserSignedIn: function () {
return UserService.isSignedIn();
},
setIsUserSignedIn: function () {
this.setState({
isUserSignedIn: this.isUserSignedIn()
});
},
render: function () {
if (this.state.isUserSignedIn === false) {
return React.createElement(UserSignIn, {setIsUserSignedIn: this.setIsUserSignedIn});
} else {
if (this.state.role !== undefined) {
ReactDOM.render(
React.createElement(Navigation),
{role: this.state.role},
document.getElementById('navigation')
);
}
return React.createElement('div', {}, '');
}
}
});
然而,这会引发一个错误,即我无法在 ReactDOM.render 方法中使用道具(当 role 未定义时)。我该怎么做?
【问题讨论】:
标签: javascript reactjs