vue 组件初始化数据

一共三层 App.vue -> index.vue -> header.vue
希望页面初始化 子组件header.vue能拿到父组件传下来的数据。我尝试过直接传值没问题比如传个字符串啥的,但是我想通过先ajax请求拿到json对象数据后再传到header,一直为空对象。刚开始用,求解答

父组件
<template>

<dbCarousel :data="data_carousel"></dbCarousel>

<script>

data(){
      return {
        data_carousel:{}
      }
},
created(){
       var _this = this;
      $.get('...',function(d){
          _this.data_carousel = d.carousel;
          //这一步并没有起作用,data_carousel并没有修改
          console.log(_this.data_carousel); //这里打印出来没问题的
      })
}

子组件
<script>

props:[
      "data"
],
created(){
      console.log(this.data);
}
阅读 22.5k
1 个回答

子组件

props: ["data"],
watch: {
    data: { 
        deep: true,
        handler () { // 每次data数据变动的时候执行
            console.log(this.data)
        }
    }
},
created () { // 在组件初始化的时候执行,只执行一次
    console.log(this.data) 
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏