我检查了所有先前的答案,但找不到解决方法。
我有一个使用Lerna的monorepo。在其中一个项目中,我创建了一个名为File
的类。抛出以下错误:
error TS2300: Duplicate identifier 'File'.
1 abstract class File {
~~~~
node_modules/typescript/lib/lib.dom.d.ts:5263:11
5263 interface File extends Blob {
~~~~
'File' was also declared here.
node_modules/typescript/lib/lib.dom.d.ts:5268:13
5268 declare var File: {
~~~~
and here.
root tsconfig.json
{
"compilerOptions": {
"module": "commonjs",
"declaration": true,
"noImplicitAny": false,
"removeComments": true,
"noLib": false,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"target": "es6",
"sourceMap": true,
"lib": ["es6", "dom"],
"skipLibCheck": true
},
"exclude": ["node_modules/**"]
}
项目tsconfig.json
{
"compilerOptions": {
"outDir": "./lib",
"module": "commonjs",
"declaration": true,
"noImplicitAny": false,
"removeComments": true,
"noLib": false,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"target": "es6",
"sourceMap": true,
"lib": ["es6", "dom"],
"skipLibCheck": true,
"skipDefaultLibCheck": true
},
"include": ["./src"],
"exclude": ["node_modules/**", "**/*.spec.ts", "**/*.test.ts"]
}
我已经尝试过:
将skipLibCheck
设置添加为true。
从我的依赖项中删除typescript
并使用全局
依赖性。
使用标记--skipLibCheck
和--skipDefaultLibCheck
当然是多余的。