【问题标题】:How to set active class in react render method?如何在反应渲染方法中设置活动类?
【发布时间】:2017-06-14 01:33:55
【问题描述】:

使用 UI 工具包

   <ul className='uk-nav'>
          {languages.map(function (lang) {
            return (
              <li
                style={lang === this.state.selectedLanguage ? {color: '#d0021b'} : null}
                onClick={this.updateLanguage.bind(null, lang)}
                key={lang}>
                  {lang}
              </li>
            )
          }, this)}
        </ul>

我能够获得输出以在单击时添加带有新颜色的样式

如何在这个状态下添加 css 类名

      className={lang === this.state.selectedLanguage ? {'uk-active'} : null}

你如何传递一个带有条件的类名......以与样式相同的方式

【问题讨论】:

    标签: javascript reactjs navigation


    【解决方案1】:

    className 只是一个字符串。试试这个:

     <ul className='uk-nav'>
              {languages.map(function (lang) {
                return (
                  <li
                    className={lang === this.state.selectedLanguage ? 'uk-active' : null}
                    onClick={this.updateLanguage.bind(null, lang)}
                    key={lang}>
                      {lang}
                  </li>
                )
              }, this)}
            </ul>

    【讨论】:

    • 没有一种风格有效,我问的是添加 uk-active 的 className 而不是我是怎么做的
    • 完美你就是最好的
    • @ZenaMesfin 如果我的回答是您问题的解决方案,请单击左侧的灰色复选标记使其变为绿色 :)
    • 我会在 6 分钟内 - 显然是编辑后的等待期
    猜你喜欢
    • 1970-01-01
    • 2018-11-29
    • 1970-01-01
    • 2019-02-21
    • 1970-01-01
    • 1970-01-01
    • 2019-11-21
    • 2017-12-02
    • 2018-12-20
    相关资源
    最近更新 更多