Итак, основываясь на недавнем ответе, я начал использовать ReduxStarterKit, который использует Immer в своей функции слайса. В целом, я думаю, что основная идея блестящая.
К сожалению, когда я пытаюсь реально использовать immer для облегчения моей жизни, я сталкиваюсь с проблемами. Я попытался упростить то, что я делаю, используя мой тестовый редуктор, и у меня все та же основная проблема. Я также отключил все свое промежуточное программное обеспечение (ElectronRedux), чтобы убедиться, что это не проблема. Ниже приведен упрощенный тестовый редуктор, который я использую для тестирования:
const CounterSlice = createSlice({
name: 'counter',
reducers: {
increment: (state)=>{state.value = state.value + 1},
decrement: (state)=>{state.value = state.value - 1}
},
initialState: { value: 0 },
})
Приведенный выше код довольно прост, и, насколько я могу сказать, точно , что мне нужен Immer / ReduxStarterKitнаписать. Несмотря на это, когда я вызываю код, я получаю сообщение об ошибке: Uncaught Error: Immer drafts cannot have computed properties
Что я делаю не так?
Редактировать:
Я просто собрал простоеДемо-приложение, только для целей тестирования основ. Кодированный срез здесь работает отлично. Я полагаю, что это взаимодействие между Immer и другим пакетом, но я не уверен, что делать с отладкой, которая one . Является ли это проблемой версии с редуксом, электронным, электронным, электронным, машинописным, веб-пакетом, список можно продолжать и (мучительно) продолжать.
Возможно, мне придется пересоздать основную среду моего приложения и протестировать этот один болезненный шаг ввремя. Тьфу!