前导知识:js是单线程的,所有任务都需要排队,前面的任务执行完了,才能执行后面的任务。
setTimeOut( fn , 0)会在任务队列尾部添加一个事件,一旦前面的任务都执行完了,就立即执行该事件,使得该事件尽可能早地执行。
例如:
状态和组件的更新不是同步的,所以在初次渲染时,状态更新完后就操作dom会报错
应该使用setTimeOut将状态更新和操作DOM放到DOM挂载之后
(实例待续)
前导知识:js是单线程的,所有任务都需要排队,前面的任务执行完了,才能执行后面的任务。
setTimeOut( fn , 0)会在任务队列尾部添加一个事件,一旦前面的任务都执行完了,就立即执行该事件,使得该事件尽可能早地执行。
例如:
状态和组件的更新不是同步的,所以在初次渲染时,状态更新完后就操作dom会报错
应该使用setTimeOut将状态更新和操作DOM放到DOM挂载之后
(实例待续)