【问题标题】:How to re-write the css class in React JS? [closed]如何在 React JS 中重写 css 类? [关闭]
【发布时间】:2020-09-24 09:16:54
【问题描述】:

例如,我在样式表中有一个名为“track-your-order”的 css 类,现在在某个事件触发器上我必须更新“track-your-order”中的任何内容,并将更新后的类应用到同一个 div 中。我不是要切换它,而是要更新或更改或用用户将其赋予该 div 的新值替换相同的 css 类。

【问题讨论】:

    标签: javascript css reactjs stylesheet classname


    【解决方案1】:

    我认为您可以使用来自 npm styled-components 模块的 StyledWrapper。 所以如果你想让'track-your-order'变得动态,你可以简单地创建包含你的css新值的状态。

    然后把它放在你的渲染中:

    const StyledWrapper = styled.div`
      ${this.state.newStyles}
    `;
    

    不要忘记用<StyledWrapper></StyledWrapper> 包裹受影响的元素,或者只是将所有元素包裹在渲染中。更多文档:https://github.com/styled-components/styled-components

    编辑:也不要忘记在状态中包含您的 css 类的名称。你的状态或多或少应该是这样的.track-your-order:{display:block}

    【讨论】:

    • 它工作了#Potamir。非常感谢
    【解决方案2】:

    您可以使用状态更新和三元运算符。

    className={isEventTriggered? "updated-track-your-order": "track-your-order"}
    

    【讨论】:

    • 感谢您的回复,但我不是在找这个。这是切换一个类,我想重写“track-your-order”类值,例如,在这个类中,值是 {display:"flex, backgroundColor: '#fff'} 并且在道具中只有值像 { height:"4px" width:"7px" color:"#000"} this. 当这个 props 出现时,它会覆盖现有的一次
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-16
    • 1970-01-01
    • 2017-10-05
    • 2017-01-09
    相关资源
    最近更新 更多