找不到tsconfig中的路径

时间:2019-12-10 10:18:13

标签: angular typescript

我在同一个Angular 8应用中有多个项目。 在“根” tsconfig.json中,添加@models

的路径
"compilerOptions": {
    "baseUrl": "./",
    "outDir": "./dist/out-tsc",
    "sourceMap": true,
    "declaration": false,
    "downlevelIteration": true,
    "experimentalDecorators": true,
    "module": "esnext",
    "moduleResolution": "node",
    "importHelpers": true,
    "target": "es2015",
    "typeRoots": ["node_modules/@types"],
    "lib": ["es2018", "dom"],
    "paths": {
      "@models": ["projects/shared/models"]    <=== this
    }
  },

我从index.ts桶中进口

export * from "./users/user-profile.model";
export * from "./users/users.model";

当我尝试在@models的任何组件导入模型中

import { IUser } from "@models";

我遇到错误

  

错误TS2307:找不到模块'@models'

但是当我尝试直接从桶中导入时,工作正常

在我的每个项目中,我也有tsconfig.app.json,但是我仅将路径添加到根

3 个答案:

答案 0 :(得分:0)

tsconfig.json文件中的

"@models": ["projects/shared/models"]应该替换为"@models": ["projects/shared/models/index.ts"],或者您也可以像下面这样写

  "@models": [
    "projects/shared/models/*"
  ],

答案 1 :(得分:0)

问题出在VS代码中,多次重新启动后,一切正常

答案 2 :(得分:0)

尝试一下

"paths": {
      "@models/*": ["projects/shared/models/*"]
    }

更新tsconfig.json后,重新启动应用程序