使用classNames模块动态设置类不起作用

时间:2018-03-05 03:22:28

标签: reactjs class dynamic class-names

提前感谢您看一下这个。我试图将我的元素的页面加载上的类设置为pending,然后onClick,删除挂起的类并添加完成的类:

目前,已完成和待定的状态相应变化;但是,类不会更改(挂起仍然是活动类,并且已完成未激活)。任何帮助将不胜感激!

SELECT * FROM patientdatabase ORDER BY ID DESC LIMIT 0,15

2 个答案:

答案 0 :(得分:0)

如果我理解正确,您需要在事件onClick上更改className。

如果是这样,请在makeComplete中更改setState,如下所示:

this.setState({
        completed: !this.state.completed,
        pending: !this.state.pending
      });

this.setState((prevState) => {
  return {completed: !prevState.completed, pending: !prevState.pending};
});

working demo

中的完整代码

答案 1 :(得分:0)

这个问题与i元素到svg的fontawesome转换有关,因为React不知道渲染时元素的变化。为了解决这个问题,我不得不使用fontawesome节点模块(https://www.npmjs.com/package/@fortawesome/react-fontawesome)而不是使用fontawesome CDN。