javascript - 用主题 react 导航栏处理程序

标签 javascript reactjs

我已经为我的 React 应用程序导入了一个引导主题,并且我有一个条件类,导航栏应该折叠或不折叠。

所以我用三元表达式创建了一个处理程序来有条件地呈现该类。

 <div 
 className={["navbar-collapse "  + this.state.navCollapsed ? 'collapse' : '' ]} 
  id="navbarColor01" >
    <ul class="navbar-nav mr-auto">
      <li class="nav-item active">
        <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a>
      </li>

具有各自的状态和处理条件的处理程序。

   state = {
    navCollapsed: false
  }

  onToggleNav = () => {
    console.log('its working')
    console.log(this.state.navCollapsed)
    this.setState({navCollapsed: !this.state.navCollapsed})
  }

我的问题是,每当我使用三元表达式来呈现名称时,它不会在导航栏中显示任何其他项目,并且切换不起作用。 ¡

<link href="https://stackpath.bootstrapcdn.com/bootswatch/4.1.3/minty/bootstrap.min.css" rel="stylesheet" integrity="sha384-Qt9Hug5NfnQDGMoaQYXN1+PiQvda7poO7/5k4qAmMN6evu0oDFMJTyjqaoTGHdqf" crossorigin="anonymous">

这是我使用的主题的链接。

我尝试过手动渲染条件,将两个姓氏放在一个 javascript 数组中,效果很好,所以我怀疑是三元条件。

最佳答案

改变

   className={["navbar-collapse "  + this.state.navCollapsed ? 'collapse' : '' ]}

  className={this.state.navCollapsed ? "navbar-collapse collapse" : "navbar-collapse"}

关于javascript - 用主题 react 导航栏处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53769318/

相关文章:

node.js - 在 Google App Engine 上部署 create-react-app

javascript - 在 react/mobx 中渲染对象列表

javascript - WKWebView 在加载任何 URL 时阻止某些脚本(阻止任何网站中的跟踪或广告)

javascript - 替换 javascript 对象中的字段?使用 splice 和 push,splice 的 indexOf 返回 -1 值?

javascript - 使用 Jquery 用索引或位置而不是键名解析 JSON 对象?

javascript - React 中的渲染函数中的状态为空

javascript - 在响应式 slider 中设置高度(jQuery Cycle)

javascript - 使用 angularjs 将表中的 id 发送到 Controller

javascript - ReactJS:如何根据 Prop 的值(value)对对象数组进行排序?

javascript - 如何在React组件中进行两次条件检查