vue中的父子组件问题

1.prop传值延迟问题

解决办法:

    a.给prop默认值

    b.直接在父级给子组件赋值:this.$refs.statisticsInfo.selectedData = this.selected[0];

 

2.父级可以通过this.$refs直接调用子组件的属性和方法

    例:this.$refs.statisticsInfo.selectedData = this.selected[0];

           this.$refs.statisticsInfo.beforess();

 

3.$emit可以调用父组件的方法

    this.$emit('showCityName',data);   

    第一个参数是父组件的方法:

    <Child @showCityName="updateCity"/>

    第二个参数是父组件方法的参数

     updateCity(data){//触发子组件城市选择-选择城市的事件

             this.toCity = data.cityname;//改变了父组件的值

             console.log('toCity:'+this.toCity);

          }

 

4.可在子组件的方法中直接用 this.$emit('submit');

 

上一篇:为什么 this.$refs[formName].validate((valid) =>{} 无效(没有反应)


下一篇:【收藏】Vue+elementUI的this.$refs.对象名.方法名的理解