Vue局部刷新
背景:最近接了个需求,应为数据量比较大,进行crud操作后需要进行个局部刷新的操作
因为我之前没有做过此类需求,所以就在想是不是可以通过this.$nextTick这个方法来实现
首先我们看下Vue中对此方法的说明:在下次dom更新循环之后执行延迟回调,在修改数据之后立即使用这个方法,获取更新后的dom
ok,上代码,比如我们要在一个div中进行局部刷新的操作
<template>
<div v-if="isReload">
{{reloadData}}
</div>
</template>
<script>
export default{
data() {
isReload:true
reloadData:""
}
</script>
methods:{
reload() {
this.isReload = false;
this.$nextTick(() => {
this.isReload = true;
});
},
changeData(){
this.reloadData = "刷新";
this.reload();
}
}
在数据发生改变后调用reload方法即可,代码是我简化后的。如果有其他的好方法欢迎交流