参考视频例子为什么打印两次parents created

来源:3-7 合并配置(下)

慕娘6538821

2019-09-15

如题

写回答

2回答

ustbhuangyi

2019-09-16

贴一下你的代码?

0
1
慕娘6538821
非常感谢!
2019-09-16
共1条回复

慕娘6538821

提问者

2019-09-16

let childComp = {
  template: '<div>{{msg}}</div>', // 子组件
  created() {
    console.log('child created')
  },
  mounted() {
    console.log('child mounted')
  },
  data() {
    return {
      msg: 'Hello Child'
    }
  },
}

Vue.mixin({
  created() {
    console.log('parents  created');
  } 
})
new Vue({
  render: h => h(childComp),
}).$mount('#app')


0
1
ustbhuangyi
因为是全局混入了 created 钩子函数,也就是每个组件实例(包括根实例)都会拥有这个 created 钩子函数,示例中根实例初始化的时候会执行一次,ChildComp 初始化的时候会执行一次,所以会输出 2 次。
2019-09-16
共1条回复

Vue.js 源码深入解析 深入理解Vue实现原理

全方位讲解 Vue.js 源码,进阶高级工程师

4984 学习 · 1037 问题

查看课程