【发布时间】:2019-05-24 11:36:50
【问题描述】:
我有一个包含这样信息的对象。
export const initialSettings = {
id: '01',
name: '',
lat: '',
long: '',
adressLine1: '',
adressLine2: '',
city: '',
state: '',
country: '',
zipcode: '',
status: '',
lastCommunicateDateTime: '',
{
PatientID: '1',
FirstName: 'Manav',
LastName: 'Pandya',
DateOfBirth: '',
MobileNo: '',
orders: [
{
orderId: '01',
pickupCode: 'XYZ456',
totalAmount: 40.0,
taxPercentage: 3,
insuranceAmount: 20.0,
totalCoPayAmount: 40.0,
totalPaidAmount: 40.0,
totalDueAmount: '',
paymentDueDate: '',
items: [
{
itemId: '01',
image: 'https://via.placeholder.com/30',
}
]
}
]
},
{
PatientID: '2',
FirstName: 'Manav',
LastName: 'Pandya',
DateOfBirth: '',
MobileNo: '',
orders: [
{
orderId: '01',
pickupCode: 'XYZ456',
totalAmount: 40.0,
taxPercentage: 3,
insuranceAmount: 20.0,
totalCoPayAmount: 40.0,
totalPaidAmount: 40.0,
totalDueAmount: '',
paymentDueDate: '',
items: [
{
itemId: '01',
image: 'https://via.placeholder.com/30',
}
]
}
]
}
]
};
但是当我尝试使用减速器添加新项目时,旧状态被删除并且不会得到正确的状态
每当我发布与以前的对象不同的详细信息的表单时,都会删除不适当的新对象
我的请求减速器看起来像这样。
case 'add':
return Map({
state: {
...state, // old object should remains same
patients: [state.patients, action.payload] // new item
}
});
【问题讨论】:
-
您需要在reducer中传播患者名单:
patients: [...state.patients, action.payload]
标签: reactjs react-redux redux-saga reducers