我的方案是为同一组件创建不同的独立状态,因此,当一个组件上的任何更改都不会影响其他组件状态时。
我面临的问题是,每当我在一个组件中更改任何内容时,它也会更新其他组件的状态
在我的情况下,我正在创建一个数据标签,在其中我使用不同的对象数据数组动态加载相同的组件。因此,如果我更新一个选项卡中的任何数据,则另一个选项卡不应受到影响。
使用NgRx可以吗?
我在Managing different slices of the same NgRx state中写下了不同的方法。
您必须通过其ID存储状态:
{
"counters": {
"31cd7f19-559e-4d77-8899-97797368b8c4": {
"count": -1
},
"ca6184a4-10cf-473c-b1f6-6bb73ab20679": {
"count": 4
},
"1caf0bc3-1414-4221-ae1d-a94f99ced451": {
"count": 0
}
}
}
是的,这可以通过在组件和NgRx存储之间提供服务来实现。基本上,这里的服务将像组件的数据提供者一样工作(想象每个选项卡有一个单独的服务,每个服务都知道要使用哪个存储羊肚菌)。