import _ from 'lodash';
data() {
return {
fetchDataDebounced: _.debounce(this.fetchData, 500), // 500毫秒内只执行一次
};
},
methods: {
fetchData() {
// 你的请求代码
axios.get('/api/data')
.then(response => {
// 处理响应
});
}
},
created() {
this.fetchDataDebounced(); // 使用防抖函数
},
watch: {
someData: {
handler(newVal, oldVal) {
if (newVal !== oldVal) {
this.fetchDataDebounced(); // 使用防抖函数
}
},
immediate: true // 确保组件创建时立即触发一次监听(可选)
}
}