作者:路很长别太狂_297 | 来源:互联网 | 2022-11-27 17:30
我正在使用chrome 70和chrome确实添加了方法.flatMap, .flatten, .flat
.所以我的代码确实按预期运行.不幸的是,Typescript不喜欢它.
// data.flatMap lint error
export const transformData = (data: any[]) => data.flatMap(abc => [
parentObj(abc),
...generateTasks(abc)
]);
我得到的警告是 TS2339: Property 'flatMap' does not exist on type 'any[]'.
通过我使用的方式Angular 6
,它使用Typescript ~2.9.2
我已经包括import 'core-js/es7/array';
在polyfills.ts
.
我的猜测是这些方法没有打字,我确实试过npm run -dev @types/array.prototype.flatmap
但仍未解决.
1> Aaron Beall..:
您应该添加es2019
或者es2019.array
你--lib
设置为打字稿识别array.flat()
和flatMap()
.
例:
{
"compilerOptions": {
"target": "es5",
"lib": [
"es2019"
]
}
}
是的,我重现了它,并且有效。这是我在`tsconfig.app.json``lib中的`compilerOptions`:[“ es2017”,“ dom”,“ esnext.array”,]`谢谢您,先生
注意:节点11+现在支持flatMap