第三方框架包ts报错: error TS2687:All declarations of ‘**‘ must have identical modifier

655 阅读1分钟

Angular中打包然后第三方node_module包报错 All declarations of ‘**‘ must have identical modifier,查了好多方法,终于找到了解决的方法: 解决方法: 在tsconfig.json文件夹内输入:

compilerOptions {
  "skipLibCheck": true
  }

就可以解决啦!

skipLibCheck 作用

1:优点

可以跳过声明文件(扩展名为.d.ts的文件)的类型检查.当程序包含大型声明文件时,编译器会花费大量时间类型检查已知不包含错误的声明,并且可以通过跳过声明文件类型检查来大大缩短编译时间.

2:缺点

由于一个文件中的声明可能会影响其他文件中的类型检查,因此在指定skipLibCheck时可能无法检测到某些错误.例如,如果非声明文件增加了声明文件中声明的类型,则可能导致仅在检查声明文件时报告的错误.然而,在实践中,这种情况很少见.

曾经尝试的方法

设置tsconfig (“strict”: false)ts改为非严格模式,没有生效。