【问题标题】:skip library check only in node_modules仅在 node_modules 中跳过库检查
【发布时间】:2018-10-03 18:51:57
【问题描述】:

关于在错误输入的node_modules(例如this onethis one)中禁用错误​​有几个问题,但它们都涉及使用skipLibCheck 编译器标志。

是否有其他解决方案(例如,使用includeexclude)?我有几个手写的.d.ts 文件(比DefiniteTyped 上可用的类型更严格),我想对其进行类型检查,因此对这些文件全面禁用类型检查并不吸引人。

【问题讨论】:

  • 哇,你甚至不厌其烦地用更严格的类型来增强现有的库!也许考虑也修改那些类型错误的?
  • Titian 显示源代码,所以他可能是对的。也许考虑替代解决方案,如this
  • 有一个打开的issue 有一个功能请求。

标签: typescript node-modules tsconfig


【解决方案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;
}

【讨论】:

    猜你喜欢
    • 2020-05-11
    • 2011-03-23
    • 2019-11-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多