我发现这个问题在很多很多地方都被问过,但没有一个答案对我有效。我的直觉是,这与我在react native中工作有关,但我不确定。
基本上,如果我的linter不声称有错误,我就无法使用像find
或includes
这样的es7数组属性。没有(react原生Javascript环境包括这些属性),但无论我做什么,我都无法删除错误。
对此问题的大部分回应集中在更改tsconfig.json
,特别是lib
或target
属性上。
我当前的tsconfig.json
是:
{
"compilerOptions": {
"allowJs": true,
"target": "esnext",
"outDir": "dist",
"module": "commonjs",
"sourceMap": true,
"lib": ["es2016.array.include"],
"jsx": "react-native",
"strict": true,
"allowSyntheticDefaultImports": true,
"esModuleInterop": true,
"experimentalDecorators": true,
"emitDecoratorMetadata": true
}
}
根据文档es2016.array.include
是lib属性的有效值,但我仍然看到错误Property includes does not exist on type any[]
。
我尝试将目标设定为es2015、es2016、es2017、es2018、es5、es6和esnext。我已经尝试将各种内容添加到我的lib参数中,包括es6、es6、es7、dom、es2016、es2017、es2018、esnext,以及es2106.array.includs等特定属性,但这些值或任何组合都不会从我的linter中删除此错误。
它帮助我
在tsconfig.json中"lib":["es6","ES2016.Array.Include"],