gpt4 book ai didi

javascript - Karma-typescript 接口(interface) XXX 无法同时扩展类型 ' YYY

转载 作者:行者123 更新时间:2023-11-28 03:49:59 25 4
gpt4 key购买 nike

我的tsconfig.json

{
"compilerOptions": {
"outDir": "./dist/",
"sourceMap": true,
"module": "es6",
"target": "es5",
"jsx": "react",
"allowJs": true,
"preserveConstEnums": true,
"removeComments": true,
"noImplicitAny": false,
"moduleResolution": "node",
"noUnusedParameters": true
},
"include": [
"./src/**/*"
],
"exclude": [
"node_modules",
"@typings",
"typings/main",
"typings/main.d.ts",
"typings/index.d.ts"
],
"paths": {
"react": ["node_modules/@types/react"]
}
}

我已将 karma-typescript 添加到我的配置中

settings.frameworks.push('karma-typescript');
settings.preprocessors['test-bundler.js'].unshift('karma-typescript');
settings.karmaTypescriptConfig = {
tsconfig: './tsconfig.json',
};

使用 webpack,开发服务器和编译工作正常。

这是一个虚拟测试

describe('Root', () => {
it('should pass', () => {
console.log('done');
});
});

运行测试时,我得到

node_modules/@types/react/index.d.ts(2736,19): error TS2320: Interface 'ElementClass' cannot simultaneously extend types 'Component' and 'Component'. Named property 'props' of types 'Component' and 'Component' are not identical.

和那些类似。如果我删除 settings.preprocessors['test-bundler.js'].unshift('karma-typescript'); 那么测试运行正常(但是当我开始时我无法预编译 typescript 导入我的源文件。

这是怎么回事?我的正常构建和开发服务器与我拥有的 tsconfig.json 运行良好

最佳答案

What is going on

编译上下文中有两个 react.d.ts

修复

删除node_modules和任何package-lock(或yarn lock)并再次npm install

如果不起作用,请找到无效的模块(所有模块都应将 react.d.ts 作为 peerDependency 而不是硬依赖)并在他们的项目中报告。

关于javascript - Karma-typescript 接口(interface) XXX 无法同时扩展类型 ' YYY,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48084260/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com