ts 排除 node_modules 目录检测无效

在项目中使用自己编写的组件库,运行项目时发现组件库中有些第三方包会报类型错误,提示说找不到类型包,而实际上在组件库中是安装了对应的类型包的。
根据网上的答案,只要开启 skipLibCheck,然而依旧无效:

// tsconfig.json
{
    "compilerOptions": {
        "skipLibCheck": true
    }
}

后将 import 改为 require 导入包使用,确实是可以了,然而这样做并不友好

// 将
// import * as LZString from 'lz-string'
// 改为
const LZString = require('lz-string')

最后解决方法是将类型提示包添加到 dependencies 中即可

// package.json
{
  "dependencies": {
      "@types/lz-string":"^1.3.34"
  }
}

这样,项目中安装使用自己编写的组件库时,会自动去安装对应的类型包。

参考

posted @ 2021-08-06 15:52  _fn  阅读(3403)  评论(0编辑  收藏  举报