微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

从HTML到ReactJS的汉堡菜单

如何解决从HTML到ReactJS的汉堡菜单

我正在尝试将我的代码从HTML转换为ReactJS。我尝试过但无法使它起作用的是以下代码行:

      <div className = "title-bar" data-responsive-toggle = "center_menu">
          <button className = "menu-icon" type = "button" data-toggle></button>
          <div className = "title-bar-title"></div>
      </div>

enter image description here

当我按那个汉堡包图标时,应该会出现“家庭,扩展等”列表。在HTML中,我使它工作正常。 ReactJS并没有使用我的数据响应切换center_menu id。代码应如何看待,正确的语法是什么? 附注:我是React的新手,我正在尝试学习它。

解决方法

有关如何执行此操作的一些教程,例如此处:https://css-tricks.com/hamburger-menu-with-a-side-of-react-hooks-and-styled-components/

此外,您可以使用npm库获得预期的结果。

,

好吧,我不知道您是否希望它一直看起来正常,只是将汉堡包放在较小的屏幕上,还是一直是汉堡包菜单,但通常来说,您要问的是,实际上需要条件类在display:block;display:none;之间切换,您需要使用click事件来处理它,所以基本上:

 <div className ="title-bar">
   <button className = "menu-icon" type = "button" onClick={this.toggleMenu}></button>
   <div className = "title-bar-title"></div>
 </div>

<div className={`example-menu ${this.isclicked}?" collapsed-menu": " closed-menu" `}>
  <ul class = "menu dropdown" data-dropdown-menu>
    <li><a href = "#">Home</a>
            ....
    <li><a href = "#">Contact</a></li>
  </ul>
</div>

这就是this.toggleMenu的作用:

 toggleMenu() {
    this.setState(state => ({
      isclicked: !state.isclicked
    }));
  }

无需谈论这两个类collapsed-menuclosed-menu,它们将像这样:

.collapsed-menu{
  ....
  display:block;
}
.closed-menu{
  ...
  display:none;
}
,

关于CSS(媒体查询),您是否指定了显示器的最小宽度值?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。