vue中实现每两秒切换背景的效果
时间: 2023-05-26 20:04:58 浏览: 49
1. 在Vue组件中定义一个data属性bgIndex,用于记录当前背景的索引,初始值为0。
2. 定义一个computed属性bgUrl,根据bgIndex获取当前背景的url,每次bgIndex变化时重新计算。
3. 在mounted()钩子函数中设置一个定时器,每两秒将bgIndex加一。如果bgIndex加一后超出了背景url数组的长度,从头开始循环。
4. 在模板中使用style绑定bgUrl作为背景图片的路径。
完整示例代码如下:
```
<template>
<div :style="{ backgroundImage: 'url(' + bgUrl + ')' }">
<!-- 页面内容 -->
</div>
</template>
<script>
export default {
data() {
return {
bgIndex: 0, // 当前背景的索引
bgUrls: [
'https://example.com/bg1.jpg',
'https://example.com/bg2.jpg',
'https://example.com/bg3.jpg',
], // 背景图片的路径数组
};
},
computed: {
bgUrl() {
return this.bgUrls[this.bgIndex];
},
},
mounted() {
setInterval(() => {
this.bgIndex = (this.bgIndex + 1) % this.bgUrls.length;
}, 2000);
},
};
</script>
```