Angular 角度10:VSCode使用绝对路径导入时显示错误

Angular 角度10:VSCode使用绝对路径导入时显示错误,angular,typescript,visual-studio-code,Angular,Typescript,Visual Studio Code,角度10后,从角度9升级。使用绝对路径导入时VSCode显示错误: import { IconModule } from 'src/app/shared/components/icon/icon.module'; 错误: 找不到模块“src/app/shared/components/icon/icon.module”。ts(2307) 如果我使用相对路径进行更改,它将起作用。如果降级到角度9,同样的路径也可以工作 我的tsconfig设置: /tsconfig.json { "

角度10后,从角度9升级。使用绝对路径导入时VSCode显示错误:

import { IconModule } from 'src/app/shared/components/icon/icon.module';
错误:

找不到模块“src/app/shared/components/icon/icon.module”。ts(2307)

如果我使用相对路径进行更改,它将起作用。如果降级到角度9,同样的路径也可以工作

我的tsconfig设置:

/tsconfig.json

{
  "files": [],
  "references": [
    {
      "path": "./src/tsconfig.app.json"
    },
    {
      "path": "./src/tsconfig.spec.json"
    },
    {
      "path": "./e2e/tsconfig.e2e.json"
    }
  ]
}
./src/tsconfig.app.json

{
  "extends": "../tsconfig.base.json",
  "compilerOptions": {
    "outDir": "../out-tsc/app",
    "types": []
  },
  "files": [
    "main.ts",
    "polyfills.ts"
  ]
}
./tsconfig.base.json

{
  "compileOnSave": false,
  "compilerOptions": {
    "baseUrl": "./",
    "importHelpers": true,
    "outDir": "./dist/out-tsc",
    "sourceMap": true,
    "declaration": false,
    "module": "esnext",
    "moduleResolution": "node",
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "noImplicitAny": false,
    "target": "es2015",
    "resolveJsonModule": true,
    "typeRoots": [
      "node_modules/@types"
    ],
    "lib": [
      "es2018",
      "dom"
    ],
    "paths": {
      "jszip": [
        "node_modules/jszip/dist/jszip.min.js"
      ]
    }
  },
  "angularCompilerOptions": {
    "fullTemplateTypeCheck": true,
    "strictTemplates": true,
    "strictInjectionParameters": true
  },
}

似乎是由于您的
tsconfig
文件位置导致出现问题。它已经位于
src
文件夹中,并且链接到该文件夹的
“baseUrl”:“/”
。因此,在您的绝对路径中,无需写入
src
文件夹。只需从
应用程序开始
。 比如
“app/shared/components/icon/icon.module”


或者将您的
tsconfig
文件上移到根目录下。

问题似乎是由于您的
tsconfig
文件位置造成的。它已经位于
src
文件夹中,并且链接到该文件夹的
“baseUrl”:“/”
。因此,在您的绝对路径中,无需写入
src
文件夹。只需从
应用程序开始
。 比如
“app/shared/components/icon/icon.module”


或者将您的
tsconfig
文件上移到根目录下。

将VSCode更新到最新版本(1.46.1)已修复此问题。

将VSCode更新到最新版本(1.46.1)已修复此问题。

这可能是由于在VSCode中打开子文件夹而导致的问题,其中导入由绝对路径组成,并且这些绝对路径从当前打开文件夹的父文件夹开始


修复方法:在VSCode中打开项目的根目录这可能是由于在VSCode中打开子文件夹而导致的问题,其中导入由绝对路径组成,而这些绝对路径从当前打开的文件夹的父文件夹开始


修复:在VSCode中打开项目的根目录

这是否回答了您的问题?这回答了你的问题吗?尝试将./src/tsconfig.app.json移动到根目录。不要忘记更改tsconfig文件中的相对路径。是的,它可以工作,但移动文件会破坏角度项目模板…如果你不破坏模板,只需重构绝对路径,以“app”开始,而不是“src”,正如我在回答中提到的。从“app/shared/components/icon/icon.module”导入{IconModule};尝试将./src/tsconfig.app.json移动到根目录。不要忘记更改tsconfig文件中的相对路径。是的,它可以工作,但移动文件会破坏角度项目模板…如果你不破坏模板,只需重构绝对路径,以“app”开始,而不是“src”,正如我在回答中提到的。从“app/shared/components/icon/icon.module”导入{IconModule};