在React中,一切都是看做组件。
而组件的嵌套也是十分常见的。
所以有的组件就作为容器组件
容器组件
React元素可以包含子元素
如
//JSX
<ezpanel title="title">
<p>this is demo content</p>
</ezpanel>
在React中,用this.props.children可以访问子元素
如:
var EzPanel = React.createClass({
render : function(){
return <div className="ez-panel">
{this.props.children}
</div>;
}
});
这样就可以把在React.render()中写的子元素放到相应的容器中了。
JSX可展开属性
//JSX
<div classname="ez-slider" onmousedown="{this.onMouseDown}" onmousemove="{this.onMouseMove}" onmouseup="{this.onMouseUp}"></div>
在JSX中,有时候可能我们的React元素有很多的属性。
JSX提供了一个比较好的特性来支持这种情况。即可设置一个JSON对象作为属性包。
格式如: <xx {...yy}></xx>
如:
//定义属性包
var props = {
className : "ez-slider",
onMouseDown : this.onMouseDown,
onMouseUp : this.onMouseUp,
onMouseMove : this.onMouseMove
}; //传入属性包
var rel = <div {...props}></div>;
这篇就这么多先吧