【发布时间】:2015-12-16 07:33:52
【问题描述】:
我正在使用 react-redux 创建一个应用程序。在那我使用打字稿和immutable.js。当我对类型化对象使用诸如 updateIn() 之类的不可变方法时,它会抛出错误。
以下是我尝试过的代码:
interface aType{
id: number
}
function randFun(a:aType){
a = a.updateIn([....]); //It is throwing error in this line of code.
}
randFun({id:2});
类型 {...} 中不存在属性“updateIn”
我怎样才能摆脱这个错误???
【问题讨论】:
-
如果你打算使用不可变的js,你必须放弃为你的不可变对象使用接口,所以你必须在不可变的定义文件中将aType接口替换为Map接口
-
您还可以查看github.com/engineforce/ImmutableAssign,这是一个支持 TypeScript 类型检查的轻量级不可变助手,并允许您继续使用 POJO(普通旧 JavaScript 对象)。