reactjs - 使反应重绘所有组件,或它的一部分
问题描述
我有这行代码
render() {
return <img class="animated bounceIn" src={this.state.img_source}></img>
}
播放动画。当我通过 setState() 更改 img_source 时,react 仅检测图像源的更改,并更改图片。所以动画不再播放。如何让动画再次播放?
解决方案
您可以使用 React 组件生命周期方法。
componentDidUpdate
将达到目的。
componentDidUpdate (prevProps, prevState) {
if (prevState.img_source !== this.state.img_source) {
// Redo the animation
}
}
推荐阅读
- matlab - S-Function Level 2 C Simulink (R2006b) , 从参数中获取字符串
- javascript - 具有高阶函数的递归
- asp.net-core - CQRS:我应该为读取模型使用不同的事件吗?
- python-3.x - 替换给定组数的数据框中的值
- javascript - 如何向 nock.Scope 添加扩展功能
- ansible - 无法设置环境变量以用于 ansible 角色
- r - 闪亮选择多个输入中的动态/条件过滤(selectizeInput,multiple = TRUE)
- javascript - 根据谷歌表格中单元格值的变化向特定地址发送电子邮件
- java - 带有 AWS S3 的 RESTFUL API
- javascript - 将 react 中的功能组件转换为基于类的组件