new Vue过程

new Vue后整个的流程

  • initProxy:作用域代理,拦截组件内访问其它组件的数据。

  • initLifecycle:建立父子组件关系,在当前组件实例上添加一些属性和生命周期标识。如[Math Processing Error]parent,parent,refs,$children,_isMounted等。

  • initEvents:对父组件传入的事件添加监听,事件是谁创建谁监听,子组件创建事件子组件监听。

  • initRender:声明[Math Processing Error]slots和slots和createElement()等。

  • initInjections:注入数据,初始化inject,一般用于组件更深层次之间的通信。

  • initState:重要)数据响应式:初始化状态。很多选项初始化的汇总:data,methods,props,computed和watch。

  • initProvide:提供数据注入。

思考:为什么先注入再提供呢??

  • 1、首先来自祖辈的数据要和当前实例的data,等判重,相结合,所以注入数据的initInjections一定要在InitState的上面。

  • 2、 从上面注入进来的东西在当前组件中转了一下又提供给后代了,所以注入数据也一定要在上面。

vm.[Math Processing Error]mount(vm.mount(vm.options.el):挂载实例。

posted @ 2022-04-21 14:07  lutwelve  阅读(161)  评论(0编辑  收藏  举报