Atom typescript插件找不到名称'describe'

时间:2016-10-28 11:18:36

标签: javascript typescript atom-editor

我已经尝试过包含一系列的打字,但这对我来说无法解决这个问题

enter image description here

这是我的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的路径是正确的

3 个答案:

答案 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