Vue中的异步渲染dom
注释就是测试结果!
明明已经赋值,为什么会取不到数据呢?说明取div标签数据时它并没有被及时更新,其实dom渲染本身就是一个异步操作。既然是异步操作,那它在js‘事件循环’中应该处于哪个位置呢,个人认为他应该是在微任务消息队列中,当宏任务执行完毕,之前的微任务消息队列被执行清空之后,就到它渲染了。之所以会是异步操作,是因为vue使用‘虚拟dom’来对视图进行更新。以下是一些事件循环以及虚拟dom的概念:
事件循环:https://juejin.im/post/6844903577891291143
如果想要拿到页面渲染完成后的数据,可以使用nextTick()函数,它会在视图渲染完成后执行回调函数,可把操作写在函数内。