0

我正在尝试为我的 react-typescript 应用程序实现一个 redux 商店。我的减速器有问题。在本机反应应用程序中,我做了以下

  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 和 currents 道具总是相同的。即使在 shouldContainerUpdate() 方法中更改

4

1 回答 1

0

扩展运算符完美运行。并且新对象不可变地添加到数组中。

在 TypeScript 中使用完全相同的方法,它将完美地工作:

reminders = [...state, reminder(action)];
return reminders;

为什么

因为对于 JavaScript 语法,TypeScript 遵循与 JavaScript 相同的语义

于 2017-11-15T03:37:08.930 回答