resetFields

2020-04-20  本文已影响0人  小白的踩坑日常

我的form在一个dialog 中,界面上有2个按钮,一个是添加,一个是修改。

界面加载之后,点击添加,再点修改没问题。

先点修改,会把要修改的数据加载到弹出的对话框上。但是这个界面上的值竟然被记住了!

image.png

Vue.js中this.$nextTick()的使用

this.$nextTick()将回调延迟到下次 DOM 更新循环之后执行。在修改数据之后立即使用它,然后等待 DOM 更新。它跟全局方法 Vue.nextTick 一样,不同的是回调的 this 自动绑定到调用它的实例上。

this.$nextTick()方法主要是用在随数据改变而改变的dom应用场景中,vue中数据和dom渲染由于是异步的,所以,要让dom结构随数据改变这样的操作都应该放进this.nextTick()的回调函数中。created()中使用的方法>>时,dom还没有渲染,如果此时在该钩子函数中进行dom赋值数据(或者其它dom操作)时无异于徒劳,所以,此时this.nextTick()就会被大量使用,而与created()对应的是mounted()的钩子函数则是在dom完全渲染后才开始渲染数据,所以在mounted()中操作dom基本不会存在渲染问题。

个人理解this.$nextTick()的使用场景——CSDN博主「小鱼儿游啊~游」
原文链接:https://blog.csdn.net/gaoxin666/article/details/96143571

哎呀不会用,还是不行啊啊啊啊
用深拷贝把初始数组拷贝给当前数组,暴力初始化,回头能懂了再回来解决吧

上一篇 下一篇

猜你喜欢

热点阅读