Использование Redux в Angular2 (NgRedux) для обновления/настройки записи заказа. Является ли это правильным для изменения прокси-переменной, а затем object.assign его в состояние?Redux: Это считается мутирующим состоянием?
В моем редукторе данных:
case DataActions.UPDATE_ORDER:
var updatedItem
var updatedState = state.orders
for(var i = 0; i < state.orders.length; ++i) {
if(state.orders[i]['key'] === action.payload.key) {
updatedItem = state.orders[i]
updatedItem.name = action.payload.name
updatedItem.items = action.payload.items
}
}
updatedState[i] = updatedItem
return Object.assign({}, state, {
orders: updatedState
})
Я использую (мой пакет) [flatcopy] (https://www.npmjs.com/package/flatcopy) для всех моих восстановителей, а также копировать мои объекты/массивы, прежде чем мутирует их. Чтобы увидеть, что это копия, я префикс vars с '_', поэтому у любого задания должен быть символ подчеркивания слева (см. Также readme of flatcopy). – Aitch