栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何在React中创建折叠展开列表

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何在React中创建折叠展开列表

您应该使用状态变量来显示可折叠项处于活动状态/非活动状态。

我对您的代码做了一些修改,以使其符合您的要求。

class App extends Component {  constructor() {    super();    this.state = {        activeCollapse: 'circulars'    };  }  handleExpandCollaps = (name) => {    if (this.state.activeCollapse === name) {        this.setState({ activeCollapse: '' })    } else {        this.setState({ activeCollapse: name })    }  }  moreInfoClick = (e) => {    e.stopPropagation();    console.log("clicked");  }  render() {    return (      <div>        <div className="sidebar-nav">          <div className="sidebar-nav-menu"> <div className={`sidebar-nav-menu-item ${this.state.activeCollapse === "circulars" ? 'item-active' : ''}`} onClick={() => this.handleExpandCollaps("circulars")} data-id="circulars" >   <div className="sidebar-nav-menu-item-head">     <span className="sidebar-nav-menu-item-head-title">Circulars</span>     <span className="sidebar-nav-menu-item-head-help">       <button type="button" className="btn-help" onClick={this.moreInfoClick}>View more info</button>     </span>   </div>   <div className="sidebar-nav-menu-item-body">BODY ConTENT HERE</div> </div> <div className={`sidebar-nav-menu-item ${this.state.activeCollapse === "specifications" ? 'item-active' : ''}`} onClick={() => this.handleExpandCollaps("specifications")} data-id="specifications">   <div className="sidebar-nav-menu-item-head">     <span className="sidebar-nav-menu-item-head-title">Specifications</span>     <span className="sidebar-nav-menu-item-head-help">       <button type="button" className="btn-help" onClick={this.moreInfoClick}>View more info</button>     </span>   </div>   <div className="sidebar-nav-menu-item-body">BODY ConTENT HERE</div> </div> <div className={`sidebar-nav-menu-item ${this.state.activeCollapse === "wo" ? 'item-active' : ''}`} onClick={() => this.handleExpandCollaps("wo")} data-id="wo">   <div className="sidebar-nav-menu-item-head">     <span className="sidebar-nav-menu-item-head-title">Work Orders</span>     <span className="sidebar-nav-menu-item-head-help">       <button type="button" className="btn-help" onClick={this.moreInfoClick}>View more info</button>     </span>   </div>   <div className="sidebar-nav-menu-item-body">BODY ConTENT HERE</div> </div>          </div>        </div>      </div>    );  }}

注意: 我曾经使用

CSS
font-awesome
图标。希望你已经添加
font-awesome

演示版



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/371803.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号