1. 程式人生 > 其它 >Vue cli傳遞資料

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();
    },
  },