ボタンはフィドルと似ていますが、サイドバーのコンポーネントに含めることができます。
I've updated the fiddle
リアクトの美しさは、状態を分離しています。私はこのように考える:
- 私はサイドバーは、私は私のサイドバーコンポーネントは、その小道具
に基づいて/ショーを非表示にする
- を示すかどうすべきかと言う(店のように、)いくつかのグローバルな状態にしたいです
- 私は、コンポーネントがそれに応じてそれ自身を変更することを望み、どこからでもその値を変更/トグルします。
のでParent
は
var Parent = React.createClass({
getInitialState: function(){
return {sidebarOpen: false};
},
handleViewSidebar: function(){
this.setState({sidebarOpen: !this.state.sidebarOpen});
},
render: function() {
return (
<div>
<Header onClick={this.handleViewSidebar} />
<SideBar isOpen={this.state.sidebarOpen} toggleSidebar={this.handleViewSidebar} />
<Content isOpen={this.state.sidebarOpen} />
</div>
);
}
});
とSideBar
(その関数を呼び出すボタンを追加すること)になり(今SideBar
に機能して渡し)となります:
あなたが使用することができます
var SideBar = React.createClass({
render: function() {
var sidebarClass = this.props.isOpen ? 'sidebar open' : 'sidebar';
return (
<div className={sidebarClass}>
<div>I slide into view</div>
<div>Me too!</div>
<div>Meee Threeeee!</div>
<button onClick={this.props.toggleSidebar} className="sidebar-toggle">Toggle Sidebar</button>
</div>
);
}
});
:絶対に;'と '高さ:100%;'フルハイトバー –