vue、bus 使用遇到的坑,组件之间无法传值;vue、bus 第一次获取不到值,后面数据叠加
问题定位:
- 出现无法传值的情况,检查传值过程中组件是否还没有渲染;可能出现的情况是:组件被if,在你使用 Bus.$emit() 时组件还没有渲染出来;
- 出现点击重复执行情况,检查bus是否使用后销毁;
使用Bus.$on后,需要生命周期beforeDestroy中销毁:
beforeDestroy() {
Bus.$off("onSearchwordKey");
}
bus详细使用见官方文档:https://cn.vuejs.org/v2/guide/migration.html#dispatch-%E5%92%8C-broadcast-%E6%9B%BF%E6%8D%A2
参考:https://segmentfault.com/a/1190000021053767