【发布时间】:2016-06-19 05:46:05
【问题描述】:
我正在尝试使用 React 创建一个基本 Meteor 应用程序的结构: 这是main.html
<head>
<title>test</title>
</head>
<body>
<div id="render-target"></div>
</body>
这是启动函数
Meteor.startup(function () {
ReactDOM.render(<AppLayout />, document.getElementById("render-target"));
});
这是应用布局
AppLayout = React.createClass({
render() {
return (
<div className="wrapper">
{this.props.nav}
{this.props.content}
{this.props.footer}
</div>
)
}
});
据我了解
ReactDOM.render(<AppLayout />, document.getElementById("render-target"));
应该用 AppLayout 元素(“包装器”div)替换 div“render-target”,但是当我运行应用程序时,在主体内部我看到两个 div:“render-target”和“react-根”。
As you can see here
为什么“render-target”div 还在那里,而“wrapper”却重复了?
编辑:
路由器部分是
FlowRouter.route("/", {
name: "HomePageRoute",
action:function() {
ReactLayout.render(AppLayout, {
nav: <NavBar />,
content: <HomePageContainer />,
footer: <Footer/>
});
}
});
【问题讨论】: