传播运算符给打字稿问题

时间:2017-11-15 03:30:50

标签: reactjs typescript immutable.js reactjs.net

我正在尝试为react-typescript应用程序实现redux存储。我的减速机有问题。在本机react-apps中,我做了以下

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

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

使用typescript这不会发生。(获取一个空对象而不是数组)我试过object.assign

  return (<any>Object).assign({}, state, reminder(action));

这将替换当前对象,而不是将其添加到数组中,我不认为它以不可变的方式执行它。

我尝试了uisng immutable.js,并且根本没有调用reducer。

 return map([state,reminder(action)])

不知道出了什么问题。在使用objext.assign后,nextprops和潮流道具总是相同的。即使在shouldContainerUpdate()方法中更改了

1 个答案:

答案 0 :(得分:0)

  

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

在TypeScript中使用完全相同的方法,它将完美运行:

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

为什么

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