我已经尝试过包含一系列的打字,但这对我来说无法解决这个问题
这是我的tsconfig.json文件:
{
"compilerOptions": {
"declaration": false,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"lib": ["es6", "dom"],
"mapRoot": "./",
"module": "es6",
"moduleResolution": "node",
"outDir": "../dist/out-tsc",
"sourceMap": true,
"target": "es5",
"typeRoots": [
"../node_modules/@types"
],
"types": [
"jasmine"
]
}
}
node_modules的路径是正确的
答案 0 :(得分:3)
我正在使用这个临时解决方案 - 虽然我希望atom-typescript插件可以更好地解决它。
安装类型;
npm install @types/jasmine --save-dev
将此行添加到我的src / app / app.component.spec.ts文件中;
import '../../node_modules/@types/jasmine';
不需要将其添加到任何其他规范文件中,只编辑这个文件就可以解决这个问题。
我找到了另一种解决方法,但有效,但不如我上面那么好,所以根据你的需要编辑“package.json”,将“devDependencies”中的jasmine引用移动到“依赖项” “部分;
"@types/jasmine": "^2.5.38"
答案 1 :(得分:1)
我遇到了同样的问题。为了解决这个问题,我删除了 typeRoots ,并保留了类型数组。
答案 2 :(得分:-1)
我已经解决了同样的问题。我也是Atom用户。只需在tsconfig.json中排除spec.ts文件即可。我的tsconfig.json现在看起来像这样:
{
"compilerOptions": {
"declaration": false,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"lib": ["es6", "dom"],
"mapRoot": "./",
"module": "es6",
"moduleResolution": "node",
"outDir": "../dist/out-tsc",
"sourceMap": true,
"target": "es5",
"typeRoots": [
"../node_modules/@types"
]
},
"exclude": [
"./src/*.spec.ts",
]
}
在此处阅读有关tsconfig的更多信息:https://www.typescriptlang.org/docs/handbook/tsconfig-json.html