考虑以下组件层次结构:
var FundComponent = React.createClass({
render : function() {
return (
<div>
<UserComponent profile={data} />
</div>
);
}
});
var UserComponent = React.createClass({
render : function() {
return (
<div>
Some Stuff goes here
</div>
);
}
});
React.renderComponent(<FundComponent />, document.getElementById('fund'));
这将在我的HTML中的UserComponent
节点内呈现#fund
。
如何在HTML中的UserComponent
节点内的特定节点中呈现fund
?例如:
<div id="fund">
<div id="otherStuff">Stuff</div>
<div id="user">**load UserComponentHere**</div>
</div>
答案 0 :(得分:1)
在阅读了一下后,我发现了如何解决这个问题。随意纠正我。
React
对于如何解决此问题有不同的概念。
我们不是在html文件中预先定义html,而是在render
函数中定义它,如下所示:
var FundComponent = React.createClass({
render : function() {
return (
<div>
<div className="myOtherStuff1">
<OtherComponent1 data={data} /> //other stuff
</div>
<div className="user"> //user
<UserComponent profile={profile} />
</div>
<div className="myOtherStuff2">
//can have component or other static stuff. Upto developer.
</div>
...
</div>
);
}
});
React.renderComponent(<FundComponent />, document.getElementById('fund'));
html将是:
<div id="fund"></div>
然后,我们可以定义UserComponent
和OtherComponent(s)
。
答案 1 :(得分:0)
我可能会误解你,但你应该能够做到:
React.renderComponent(<FundComponent />, document.getElementById('user'));
渲染到#user
div。