我遇到了无缝不可变和 Typescript 的问题。当我创建如下包含一个数组的对象,然后从创建的不可变对象中“获取”该数组时,类型系统无法推断出它是一个不可变数组并导致错误:
[ts] 无法调用类型缺少调用签名的表达式。类型 > '((callbackfn: (value: number, index: number, array: number[]) => U, thisArg?: any) => U[]) | (...' 没有兼容的调用签名。
代码:
import * as SeamlessImmutable from "seamless-immutable"
const numbers = [1, 2, 3, 4, 5]
const immutableObject = SeamlessImmutable.from({
numbers
})
const immutableNumbers = immutableObject.getIn(["numbers"])
immutableNumbers.map(number => number * 2)
使用:
- 打字稿 2.6.1
- 无缝不可变 7.1.1
- @types/无缝不可变 7.1.1
有什么建议么?类型的东西?这里最有意义的是什么?