仅在 node_modules 中跳过库检查
Posted
技术标签:
【中文标题】仅在 node_modules 中跳过库检查【英文标题】:skip library check only in node_modules 【发布时间】:2018-10-03 18:51:57 【问题描述】:关于在错误输入的node_modules
(例如this one 或this one)中禁用错误有几个问题,但它们都涉及使用skipLibCheck
编译器标志。
是否有其他解决方案(例如,使用include
或exclude
)?我有几个手写的.d.ts
文件(比DefiniteTyped 上可用的类型更严格),我想对其进行类型检查,因此对这些文件全面禁用类型检查并不吸引人。
【问题讨论】:
哇,你甚至不厌其烦地用更严格的类型来增强现有的库!也许考虑也修改那些类型错误的? Titian 显示源代码,所以他可能是对的。也许考虑替代解决方案,如this 有一个打开的issue 有一个功能请求。 【参考方案1】:没有对类型检查的精细控制,不幸的是,您要么检查所有声明文件,要么不检查。来自编译器代码:
export function skipTypeChecking(sourceFile: SourceFile, options: CompilerOptions)
// If skipLibCheck is enabled, skip reporting errors if file is a declaration file.
// If skipDefaultLibCheck is enabled, skip reporting errors if file contains a
// '/// <reference no-default-lib="true"/>' directive.
return options.skipLibCheck && sourceFile.isDeclarationFile || options.skipDefaultLibCheck && sourceFile.hasNoDefaultLib;
【讨论】:
以上是关于仅在 node_modules 中跳过库检查的主要内容,如果未能解决你的问题,请参考以下文章