第一种:通过this.$parent调用父组件的方法

vue子组件调用父组件的方法_qt

 

第二种:通过this.$emit()去触发父组件中子组件标签上的自定义事件,可以传值过去,用的比较多

vue子组件调用父组件的方法_qt_02

 

第三种:父组件中定义自定义属性,将该方法传递到子组件中,子组件中通过props接收,再进行调用,这里也可以进行传值

vue子组件调用父组件的方法_qt_03

 

 

总结:

想省事就使用第一种方法

第二种方法使用的最多,数据流向比较清晰,和非父子组件传值的this.$observer.$emit()  this.$observer.$on()使用方式类似(this.$emit()可以传多个值,this.$observer.$emit()只能传一个值

第三种方法定义自定义属性,这种一般用来传递属性的,不用来传方法,别人看起来不太好理解(自定义事件一般用来传函数,自定义属性一般用来传属性)