我有一个请求,vue.js 的通用组件在与不同父组件通信时的最佳实践如何。
例如,在我的场景中,一个基本的模态组件触发了一个“关闭”方法,但它有两个不同的父组件
我找到了两个解决方案:
parent 需要传递一个额外的 prop,然后 baisc 组件只触发事件,该事件的名称是 prop 值,因此可以调用附加的侦听器父组件
在basic modal中只需使用this.$parent来访问父组件方法,或者this.$parent.trigger('xxx'),然后parent就知道该怎么做了
但是,上面两个我觉得都不是很好,第一个可能需要额外传递一个prop,这让其他写第三个,第四个父组件的人使用基本组件不是很方便。第二个可能感觉更硬编码。
那么,在这种情况下是否有更好的解决方案?