实现Vue项目每30秒刷新1次接口可以通过以下步骤完成:
- 安装axios库
可以通过以下命令安装axios:
npm install axios --save
- 在Vue项目中创建一个Data对象来保存需要更新的数据
data() {
return {
data: []
}
}
- 在Vue的Mounted生命周期钩子函数中初始化请求数据
mounted() {
this.loadData();
},
methods: {
loadData() {
axios.get('url').then(response => {
this.data = response.data;
}).catch(error => console.log(error));
}
}
- 使用setInterval函数每隔30秒自动执行请求数据并更新页面
mounted() {
this.loadData();
setInterval(() => {
this.loadData();
}, 30000);
},
methods: {
loadData() {
axios.get('url').then(response => {
this.data = response.data;
}).catch(error => console.log(error));
}
}
示例1:刷新商品列表
为了在Vue应用程序中动态显示商品列表,我们可以使用以上方法,每隔30秒自动更新商品列表。
<template>
<div>
<ul>
<li v-for="item in data" :key="item.id">{{ item.name }}</li>
</ul>
</div>
</template>
<script>
import axios from 'axios';
export default {
data() {
return {
data: []
}
},
mounted() {
this.loadData();
setInterval(() => {
this.loadData();
}, 30000);
},
methods: {
loadData() {
axios.get('url').then(response => {
this.data = response.data;
}).catch(error => console.log(error));
}
}
}
</script>
示例2:刷新股票数据
假设我们想在Vue程序中动态地展示股票数据。我们使用以上方法每30秒自动刷新数据。
<template>
<div>
<p v-for="item in data" :key="item.id">{{ item.symbol }}: {{ item.price }}</p>
</div>
</template>
<script>
import axios from 'axios';
export default {
data() {
return {
data: []
}
},
mounted() {
this.loadData();
setInterval(() => {
this.loadData();
}, 30000);
},
methods: {
loadData() {
axios.get('url').then(response => {
this.data = response.data;
}).catch(error => console.log(error));
}
}
}
</script>
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:vue项目每30秒刷新1次接口的实现方法 - Python技术站