【发布时间】:2021-04-25 20:10:50
【问题描述】:
情况是这样的。有一个名为 tableData 的对象数组存储表行,现在存储在 vuex 中
组件结构是这样的:
父(页)->子1(tableLayout)->子2(tableBody)->子3(行)
在 child 3 中,有一个删除函数来删除 tableData 中的索引。
如果删除行的 id 是 selectedRow Id,父级需要更新其数据(selectedRow),这些数据将传递给另一个不相关的子组件。
目前我正在使用 watch 来观察 tableData 以响应父组件的变化。但是,watch 函数总是会在 tableData 更新时循环查找 selectedRow 是否仍然存在,这在数组很大时是非常不可取的。
我想过使用emit,但它必须通过2个组件才能到达父级,这使得代码难以管理
我也想过使用总线,但也不是一个好习惯。
有人可以就这个问题给我任何建议吗?
【问题讨论】: