【发布时间】:2021-01-14 02:49:29
【问题描述】:
我正在尝试在 react.js 的条件渲染中更改列表元素的颜色。
onClick={exist ? () => {this.handleClick(); this.props.updateSummary(store_id)} : null }
我想要style="color :#E8E8E8" 而不是:null。在进行条件渲染时,似乎我不能在 onClick 函数中使用内联样式。任何想法如何做到这一点?
谢谢
<ul>
{this.props.stores.map(({exist, store_id}) => (
<li className ="storeIdList" onClick={exist ? () => {this.handleClick(); this.props.updateSummary(store_id)} : null }>Store Id: {store_id}</li>
))}
</ul>
【问题讨论】:
-
只是...这里的样式在哪里?与
className或style属性无关... -
你
- 有 storeIdList 类。如果存在是真的,你想要
style="color :#E8E8E8"? - 有 storeIdList 类。如果存在是真的,你想要
-
@PankajShukla 如果存在我希望
this.handleClick(); this.props.updateSummary(store_id)运行此函数,如果不存在:然后更改样式。谢谢 -
@sjahan,我想在 :null 的位置添加样式,但我不知道该怎么做。
-
这能回答你的问题吗? Correct way to handle conditional styling in React 你必须使用
className或至少style你不能在onClick中这样做。onClick会触发你的state的变化,这个状态将用于选择 CSS 类或样式值。
标签: javascript css reactjs if-statement