作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的 React 应用程序中有一个包含 5 张图像的列表,我想在无限循环 中循环显示这些图像。我基本上想为这 5 个帧制作动画,使灯条看起来像一个不断移动的灯。
所以每幅图像中移动的点看起来就像在移动。
我目前正在导入每个图像并在 react-bootstraps Image
组件中渲染它。我知道我的方法可能不在下面。我将如何准确地做到这一点?
我的尝试
//images
import bar1 from "../assets/bar1.png";
import bar2 from "../assets/bar2.png";
import bar3 from "../assets/bar3.png";
import bar4 from "../assets/bar4.png";
import bar5 from "../assets/bar5.png";
//my state
state = {
bars:[bar1,bar2,bar3,bar4,bar5]
};
//function to cycle (this needs to run infinitely)
cycleBars =()=> {
let finalBar = this.state.bars0];
//return this.state.bars[0];
this.state.bars.map(e=>{
finalBar = e;
})
return finalBar;
}
//return from my component
<Image src={this.cycleBars()} />
最佳答案
我会选择 CSS 动画。以下是 React 中的解决方案:
state = {
bars:[bar1,bar2,bar3,bar4,bar5],
activeImageIndex: 0
};
componentDidMount(){
setInterval(()=>{
let newActiveIndex = this.state.activeImageIndex===4 ? 0 : this.state.activeImageIndex+1
this.setState({
activeImageIndex: newActiveIndex
})
}, 1000);
}
<Image src={this.state.bars[activeImageIndex]} />
关于javascript - 如何遍历图像数组并将它们呈现在 React 的组件中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59117736/
我是一名优秀的程序员,十分优秀!