如何在节点模块包中跳过typescript的noImplicitAny = true规则?
我正在使用Typescript 2和Webpack 2构建angular 2应用程序。作为加载程序,我使用awesome-typescript-loader。我在tsconfig.json中设置了noImplicitAny = true。但是我使用的一些npm包含有'any'类型。 (例如,角2平台节点)。所以我想跳过这个规则只适用于npm包,但不是我的应用程序源。我该如何配置?如何在节点模块包中跳过typescript的noImplicitAny = true规则?
您可以排除node_modules
但我将我的设置为false并排除node_modules
。我不知道为什么你需要将它设置为true。
我用
awesome-typescript-loader
这是怎么设置我tsconfig.json
文件。
{
"compilerOptions": {
"module": "commonjs",
"target": "es6",
"noImplicitAny": false,
"sourceMap": false,
"emitDecoratorMetadata": true,
"experimentalDecorators": true
},
"exclude": [
"node_modules",
"public/js"
]
}
你可以跳过类型检查与skipLibCheck
编译器选项的所有申报文件(打字稿加入2.0)
{
"compilerOptions": {
"noImplicitAny": true,
"skipLibCheck": true,
...
}
这是否包含node_module包或类型定义文件? – Rodney
@Rodney,_ *。d.ts_文件(位置无关紧要)。更多信息[这里](https://github.com/Microsoft/TypeScript/wiki/What's-new-in-TypeScript#new---skiplibcheck) –
你为什么要设置noimplicity =真的吗?为什么你需要它设置为真? – wuno
我发现设置几个Typescript编译器选项有助于生成更好质量的代码,包括其他标志,如noImplicitReturns和noUnusedParameters。忽略'node_modules'似乎是正确的修复。 –