关于为什么在 node_modules
中抛出错误,尽管 tsconfig.json
中排除了该文件夹,但有几个 github 问题。如果库中有任何 import
,则忽略 exclude
属性。
然而,当使用更严格的编译器选项(即strictNullChecks
、noUnusedLocals
,...)并且引用任何不是旨在处理这些选项,则会引发错误。
因此,无论何时使用这样的库,它总是不使用库或不使用编译器选项的决定。然而,有些大型库/框架不支持这些选项(即 Angular),因此似乎无法使用这些选项来确保在自己的项目中进行严格检查。
我是否错过了一些避免抛出 node_modules 错误的可能性? 如果不是,是否有任何技术要求将这些规则应用于所有导入的库或此行为背后的原因是什么?
最佳答案
在我所有的项目设置中,我在根目录中有结构:
文件夹:
- 代码文件夹
- 节点模块
文件:
- package.json
- 自述文件
- tsconfig.json
- tslint.json
- yarn 锁
然后在 tsconfig.json 中:
{
"compilerOptions": {
"lib": ["es6"]
},
"include": [
"code_folder/*"
]
}
关于Typescript 在具有严格编译器选项的 node_modules 中抛出错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44305143/