conditionally add attribute (style) to react element(有条件地向Reaction元素添加属性(样式))
本文介绍了有条件地向Reaction元素添加属性(样式)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
是否可以在我的for循环中有条件地添加样式属性。此样式将在组件挂载后立即添加到我的元素中,但我希望仅当animateLight
为true
时才添加此属性,this.props
class Main extends Component {
render() {
const {animateLight} = this.props;
const points1 = [];
const points2 = [];
const points3 = [];
for (let i = 0; i < 10; i++) {
points1.push( <img src={point1} key={i}
className={animateLight ? styles.pointsAppear : styles.points }
style={{ transform: `translate3d( ${Math.random() * 50 * i}px, ${Math.random() * 50 * i}px, 0 )` }}
alt="point"/>)
points2.push(<img src={point2}
className={animateLight ? styles.pointsAppear : styles.points}
style={{ transform: `translate3d( ${Math.random() * 50 * i}px, ${Math.random() * 50 * i}px, 0 )` }}
alt="point"/>)
points3.push(<img src={point3}
className={animateLight ? styles.pointsAppear : styles.points}
style={{ transform: `translate3d( ${Math.random() * 50 * i}px, ${Math.random() * 50 * i}px, 0 )` }}
alt="point"/>)
}
return (
<div className={styles.containerMain}>
<div className={styles.smallContainer}>
<div className={cx(styles.motivContainer, { [styles.animateText]: animateLight})}>
<p className={styles.motivText}>
...
</p>
</div>
<div className={styles.bulb}>
<img src={bulbLight}
className={cx(styles.motivImgLight,
{[styles.lightAnimation]: animateLight}
)}
alt="web idea" />
{points1}
{points2}
{points3}
</div>
</div>
</div>
);
}
}
推荐答案
您可以这样做
数据-lang="js"数据-隐藏="假"数据-控制台="真"数据-巴贝尔="假">const styleProps = !animateLight ? {} : { style: { transform: `translate3d( ${Math.random() * 50 * i}px, ${Math.random() * 50 * i}px, 0 )` } };
<img {...styleprops} />
这篇关于有条件地向Reaction元素添加属性(样式)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
织梦狗教程
本文标题为:有条件地向Reaction元素添加属性(样式)


基础教程推荐
猜你喜欢
- 检查 HTML5 拖放文件类型 2022-01-01
- 原生拖动事件后如何获取 mouseup 事件? 2022-01-01
- 如何添加到目前为止的天数? 2022-01-01
- Bokeh Div文本对齐 2022-01-01
- fetch 是否支持原生多文件上传? 2022-01-01
- npm start 错误与 create-react-app 2022-01-01
- 在 contenteditable 中精确拖放 2022-01-01
- Bootstrap 模态出现在背景下 2022-01-01
- Fabric JS绘制具有活动形状的多边形 2022-01-01
- 即使用户允许,Gmail 也会隐藏外部电子邮件图片 2022-01-01