在项目中使用自己编写的组件库,运行项目时发现组件库中有些第三方包会报类型错误,提示说找不到类型包,而实际上在组件库中是安装了对应的类型包的。
根据网上的答案,只要开启 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"
}
}
这样,项目中安装使用自己编写的组件库时,会自动去安装对应的类型包。