我的减速器中有一个商店,需要更新一个内部数组对象值:
为了:
export interface SiteState {
site: Site;
}
和
export interface Site {
id: number | null;
uuid: string;
subscriptions?: (SubscriptionI)[] | null;
}
并想更新站点->订阅 [x] = action.payload
// 用解决方案编辑
function handle(state: SiteState, action: Successaction): SiteState {
const sub = state.site.subscriptions.map( subs => {
if (subs.uuid === action.payload.uuid) {
return action.payload
} else {
return subs;
}
});
const site = { site: {...state.site, subscriptions: sub} };
return site
}
我尝试了传播运算符,但他只是将我的新订阅推送到根站点,我不知道如何编写它来更新作为数组的对象 SubscriptionI。