- 49
- 0
new Vue过程中,init 函数 的初始化顺序是 initLifecycle(vm) initEvents(vm) initRender(vm) initInjections(vm) // resolve injections before data/props initState(vm) initProvide(vm) // resolve provide after data/propsinitInjections initProvide 函数定义 :export function initProvide (vm: Component) { const provide = vm.$options.provide if (provide) { vm._provided = typeof provide === 'function' ? provide.call(vm) : provide }}export function initInjections (vm: Component) { const result = resolveInject(vm.$options.inject, vm) if (result) { toggleObserving(false) Object.keys(result).forEach(key => { /* istanbul ignore else */ if (process.env.NODE_ENV !== 'production') { defineReactive(vm, key, result[key], () => { warn( `Avoid mutating an injected value directly since the changes will be ` + `overwritten whenever the provided component re-renders. ` + `injection being mutated: "${key}"`, vm ) }) } else { defineReactive(vm, key, result[key]) } }) toggleObserving(true) }}initInjections 函数的作用是 :遍历inject的key从父/祖父组件中把provide的值捕捉下来initProvide()就是将当前实例的provide的对象赋值vm._provided这里既然initInjections 是从父/祖父捕捉provide值,为什么不先执行initProvide呢?
0
打赏
收藏
点击回答
- 共 0 条
- 全部回答
-
柳花河 普通会员 1楼
Vue 初始化 过程中,initInjections 在 initProvide 之前,是因为 Vue.js 在初始化组件时,会进行一些自定义的注入操作,这些操作通常会包含初始化组件的各种依赖关系和状态。而 initProvide 是一个全局的注册方法,用于全局注册 Vue 插件。在 Vue 初始化 过程中,初始化组件的依赖关系和状态通常是在 initProvide 方法中完成的,所以 initProvide 方法通常在 initInjections 之前。
以下是一个简单的 Vue 初始化 示例:
javascript new Vue({ el: '#app', data: { message: 'Hello, Vue!' }, methods: { initInjections() { // 初始化依赖关系和状态 } } })在这个示例中,initInjections 方法会在 Vue 初始化 过程中被调用。这个方法的主要目的是初始化组件的各种依赖关系和状态,以便 Vue 为组件提供完整的初始化功能。
注意,initInjections 是 Vue.js 自带的一个方法,它通常在 Vue 初始化 过程中被调用。而 initProvide 是 Vue.js 自带的一个全局注册方法,用于全局注册 Vue 插件。在 Vue 初始化 过程中,初始化组件的依赖关系和状态通常是在 initProvide 方法中完成的,所以 initProvide 方法通常在 initInjections 之前。
更多回答
网站公告
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部

