循环通过预加载的图像对象作为背景图像

时间:2018-02-01 14:25:40

标签: javascript css image reactjs

我们正在React建立一个网站。我们希望背景图像循环通过10个不同背景的数组。现在我们使用divStyle设置背景图像,其中每隔10秒更新一次url以请求下一个图像。这可行,但这会每10秒向服务器发出一次请求。有没有办法在componentDidMount中加载一次图像数组(所以第一次加载网页)然后只是在这个数组中循环?

我们尝试使用Image()个对象创建一个数组,但background-image属性只接受一个url。我们还尝试在React的render方法中使用Image()个对象渲染数组,但是我们得到一个&#39; Object作为React child&#39;错误,在控制台中,对象显示为<img src='/assets/img/bg1.jpg>而没有关闭&#39; /&#39;在标签的末尾。

我们使用Image()对象填充数组的循环如下所示:

for (var i = 1; i <= imgNumber; i++) {
  imgArray[i] = new Image()
  imgArray[i].src = '/assets/img/bg'+ i +'.jpg'
}

0 个答案:

没有答案