我們都知道,vue是單向流,但是有時(shí)候我們需要在父組件中主動(dòng)通知子組件一些信息旦委,使其做出一些響應(yīng)變化,那么如何在父組件中去主動(dòng)調(diào)用子組件的方法呢雏亚?Vue當(dāng)然給我們提供了方法缨硝,如下:
- 首先在子組件中進(jìn)行事件廣播
created: function(){
this.$on('handleChange', function(){
console.log('something handled!');
});
}
- 在父組件中指定子組件的ref,如
child
罢低,然后通過一下方式調(diào)用:
this.$refs['child'].$emit('handleChange');
核心還是事件的分發(fā)及相應(yīng):$on
查辩、$emit
。