路由的组件调用其他组件的方法。

我的Vue项目像这样,我的body是路由的页面,可以跳转到很多页面(eg: a, b, c 组件),在路由到不同页面的时候,headerfooter都是存在于页面的。

图片描述

我的header中有一些方法,我的可是我body路由到b组件的时候,我想在b组件中调用a组件的方法,请问怎么做呢?

阅读 5.3k
2 个回答

按你的描述,b组件a组件 是在路由中的同级关系,不是父子之间的关系,不能同时存在于页面中。这时候是不能互相调用的。

建议你把需要调用的方法抽离出来,放到单独的模块里维护,这样就不用去组件里调用。

1.可以理解为你是要实现组件间的通信,那么可以用vuex或者eventbus来实现,在b组件里emit一个事件,header组件里处理
2.如果只是内部一些方法是公用的,那么可以放到mixin里去

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题