Оператор распространения, вызывающий проблему с машинописью
Я пытаюсь реализовать избыточное хранилище для моего приложения реагировать на машинопись. У меня проблема в редукторе. В родных реакциях я сделал следующее
reminders = [...state, reminder(action)];
return reminders;
оператор распространения работает отлично. и новый объект добавляется в массив неизменным.
с машинопись это не происходит.(получить пустой объект вместо массива) Я попытался object.assign
return (<any>Object).assign({}, state, reminder(action));
Это заменяет текущий объект, а не добавляет его в массив, и я не думаю, что он делает это неизменным образом.
Я попробовал uisng immutable.js, а редуктор вообще не вызывался.
return map([state,reminder(action)])
понятия не имею, что не так. также после использования objext.assign nextprops и токовые реквизиты всегда приходят одинаковыми. даже если он изменен в методе shouldContainerUpdate()
1 ответ
оператор распространения работает отлично. и новый объект добавляется в массив неизменным.
Используйте то же самое в TypeScript, и он будет отлично работать:
reminders = [...state, reminder(action)];
return reminders;
Зачем
Потому что TypeScript следует той же семантике, что и синтаксис JavaScript для JavaScript