首页 > 解决方案 > vscode自动导入创建打字稿抱怨的文件路径不存在

问题描述

我正在使用 TypeScript 别名来帮助缩短从我的项目中导入模块的路径。通常,如果我使用自动完成,vscode 会帮助找到导入并自动导入它。或者,如果我移动一个文件,vscode 将尝试根据我的 tsconfig 帮助重写导入路径。但是奇怪的事情发生了。通常,我会得到如下所示的自动导入:

import { Actions } from "@src/devices/device_list/store/page/actions";

但是打字稿抱怨说Module not found: Can't resolve '@src/devices/device_list/store/page/actions' in '/Users/me/Desktop/web-dev/company/project/src/devices/device_list/elements/device_dialogs'

当我手动将导入更改为:

import { Actions } from "@device_list/store/page/actions";

错误消失。但这意味着我不能依赖自动导入,我最终不得不手动重写我所有的导入行。没什么大不了的,但很烦人。我确定这与compilerOptions.baseUrl我的 tsconfig 相关,如下所示:

{
  "compilerOptions": {
    "baseUrl": "./src",
    "paths": {
      "@src/*": ["*"],
      "@devices/*": ["devices/*"],
      "@device_list/*": ["devices/device_list/*"],
      "...": "... more paths"
    }
  }
}

我将其设置为的原因baseUrl./src因为我想要一种从src文件夹中为导入别名的方法。这是错的吗?我的 vscode 基于我的 tsconfig 编写自动导入路径,TypeScript 然后说它无法解析?

标签: typescriptvisual-studio-codeimportalias

解决方案


推荐阅读