许多模板语言都有“slot”或“yield”语句,它们允许进行某种控制反转,将一个模板包装到另一个模板中
Angular具有“transclude”选项
Rails有一个yield语句。如果React.js有yield语句,则如下所示:
var Wrapper=React.createClass({
render:function(){
返回(
<;div className=“包装器”>;
之前
<;收益率/>;
之后
<;/div>;
);
}
});
var Main=React.createClass({
render:function(){
返回(
<;Wrapper>;<;h1>;内容<;/h1>;<;/Wrapper>;
);
}
});
期望输出:
<;div class=“包装器”>;
之前
<;h1>;内容</h1>;
之后
</部门>;
唉,React.js没有<;产量/>。如何定义包装器组件以实现相同的输出
尝试:
var Wrapper=React.createClass({
render:function(){
返回(
<;div className=“包装器”>;
之前
{this.props.children}
之后
<;/div>;
);
}
});
有关更多信息,请参阅文档中的多个组件:子项和子项道具的类型