假设我有一个预订系统的存根。
创建预订时,我可以在我们的客户中搜索并选择我要预订的客户。选择客户后,关联的客户联系人将作为副作用加载。作为用户,我必须选择其中一个联系人进行预订。
让我们假设我的状态形状是这样的:
{
customer: {id: 1, name: "Dandy Inc"}
customerContacts: [{id:1, name: "John Doe"},{id:2, name: "John Doe"}]
customerContactId: 2
}
保存后,我只保存 customerId 和 customerContactId。
现在假设我想在未来的某个时间点编辑此预订。
我可以
1)获取我拥有的数据,并基本上“重播”动作以触发我需要的副作用(例如,设置客户并触发加载客户联系人的副作用)或
2)获取我拥有的数据,手动加载我需要的任何额外数据,然后一次性设置完整的应用程序状态。
您对最佳前进路线有何看法?这是一个简化的例子,假设现实世界的场景至少有 2-4 个额外的副作用需要触发。