我正在使用React JS来创建响应式UI。我想创建一个可折叠的侧边栏,如下所示:
因此,当我单击垂直条(图形信息)时,它应该像第二张图片一样展开。我在Jsfiddle
Sample code看到了一些例子。但是在这里,他们使用静态按钮来控制崩溃。我可以使用任何图书馆吗?或者任何代码建议?
我正在学习React JS。所以任何帮助或建议都将不胜感激。
答案 0 :(得分:6)
您可以使用与小提琴中的按钮相同的按钮,但将其放在侧边栏组件中。
React之美正在分离国家。我想是这样的:
所以Parent
成为(现在将函数传递给SideBar
)
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
变为(添加一个调用该函数的按钮):
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>
);
}
});
答案 1 :(得分:1)
您可以使用React Offcanvas组件来实现此功能。 以下是安装offcanvas组件的链接。
答案 2 :(得分:1)
我没有使用幻灯片抽屉或react-sidebar之类的任何软件包来实现侧面抽屉。
您可以在我的GitHub帐户 Side Drawer 中检出 GhostWolfRider 。
输出图像以供参考:
幻灯片之前:
幻灯片后: