React是使用类名管理多个主题的好方法吗?

时间:2018-11-22 12:52:29

标签: reactjs react-redux class-names

考虑以下代码:-

  render() {
      const headerClasses=classnames({
        "Header":true,
        "Header---dark":this.props.theme.dark,
        "Header--light":this.props.theme.light
      })
    return (
      <div className={headerClasses}>
            Header content goes here
      </div>
    )
  }

我的应用程序将只有两个主题。一暗一亮。我试图将主题存储在redux存储中,并使用类名相应地更改类名。这是有效的方法还是反模式?在大型应用程序中管理主题的最简单方法是什么?

1 个答案:

答案 0 :(得分:0)

  1. 具有带有主题的状态属性以及所有对应的数据
  2. 将组件的主题设置为this.props.currentTheme
  3. 更改主题时,您只是在更改currentTheme中的数据,其他所有内容也会更改
相关问题