Error in nextTick: “TypeError: Cannot set properties of undefined (setting ‘xxx‘)“

Error in nextTick: “TypeError: Cannot set properties of undefined (setting ‘xxx‘)“_第1张图片

Error in nextTick: “TypeError: Cannot set properties of undefined (setting ‘xxx‘)“_第2张图片

th.dialogStatus = 'update'
th.dialogFormVisible = true就是执行这个的时候orgSelect还没有渲染成功!

 

当看到nextTick的时候各位有没有想到$nextTick呢

这个报错正是需要通过使用$nextTick来解决

Vue 在更新 DOM 时是异步执行的。只要侦听到数据变化,Vue 将开启一个队列,并缓冲在同一事件循环中发生的所有数据变更,也就是说,vue赋一个值,并不是立即生效,而是下一个事件触发时更新为了在数据变化之后等待 Vue 完成更新 DOM,可以在数据变化之后立即使用 Vue.nextTick(callback)

$nextTick 是在下次 DOM 更新循环结束之后执行延迟回调,在修改数据之后使用 $nextTick,则可以在回调中获取更新后的 DOM

 

你可能感兴趣的:(vue.js,javascript,前端)