首页 > 解决方案 > Visual Studio Code 中的 .spec.ts 文件看不到路径别名

问题描述

我遇到了一个问题,我的路径别名(例如 import * as fromUsers from '@store/user/user.reducer';- )在 VS Code 中没有被识别。(注意 - 编译一切正常)。VS Code 报告“找不到模块'@store/user/user.reducer'”

我既有 a <root>/tsconfig.json,也有 a <root>/src/tsconfig.spec.jsonwhich 看起来像:

tsconfig.json

{
  "compilerOptions": {
    "allowSyntheticDefaultImports": true,
    "declaration": false,
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "lib": ["dom", "es2015"],
    "baseUrl": "./src",
    "paths": {
      "@store/*": ["app/store/*"],
      "@core/*": ["app/core/*"],
      "@components/*": ["app/components/*"],
      "@app/*": ["app/*"],
      "@assets/*": ["assets/*"],
      "@env": ["environments/environment"],
      "@pages/*": ["pages/*"],
      "@theme/*": ["theme/*"]
    },
    "module": "es2015",
    "moduleResolution": "node",
    "sourceMap": true,
    "target": "es5"
  },
  "include": ["src/**/*.ts"],
  "exclude": ["node_modules", "src/**/*.spec.ts", "src/**/__tests__/*.ts"],
  "compileOnSave": false,
  "atom": {
    "rewriteTsconfig": false
  },
  "types": ["jasmine"]
}

src/tsconfig.spec.json

{
  "extends": "../tsconfig.json",
  "compilerOptions": {
    "outDir": "../out-tsc/spec",
    "baseUrl": ".",
    "module": "commonjs",
    "target": "es5",
    "allowJs": true,
    "paths": {
      "@store/*": ["app/store/*"],
      "@core/*": ["app/core/*"],
      "@components/*": ["app/components/*"],
      "@app/*": ["app/*"],
      "@assets/*": ["assets/*"],
      "@env": ["environments/environment"],
      "@pages/*": ["pages/*"],
      "@theme/*": ["theme/*"]
    }
  },
  "include": ["**/*.spec.ts"],
  "exclude": ["node_modules"]
}

关于如何让 VS Code 识别这些别名的任何想法,这样我就不会一直看到 IDE 中报告的错误?

标签: javascriptangulartypescriptimportvisual-studio-code

解决方案


推荐阅读