Vue cli传递数据

Nav组件和Forecast组件都是Home组件的子组件。

(1)子组件传递数据给父组件

在子组件中,通过this.$emit('自定义事件名', 参数1,参数2,...)来调用父组件中定义的事件.

子组件Nav.Vue添加:

 watch:{
    city(){
      this.$emit("getCity",this.city);
    }

  

父组件Home.Vue:

<Nav @getCity="getCity"></Nav>

 data(){
    return {
      city:""
    }
  },
  methods:{
    getCity:function (city){
       console.log(city)
       this.city = city;
    },

  }

  

注意:子组件中往父组件传递数据,属于单向数据量。

 

 

(2)父组件的数据传递给子组件

Home.Vue组件:

<Forecast :choose_city="city"></Forecast

  

子组件Forecast.Vue:

 props: {  // 接收来自父组件的数据
    choose_city: {
      default:"北京",
      type: String,
    }
  },

  watch: {
    choose_city() {
        this.city = this.choose_city
        this.get_weather();
    },
  },

  

 

posted @ 2021-10-02 13:13  映辉  阅读(64)  评论(0)    收藏  举报