javascript - 如何在 Visual Studio Code 中设置 Angular 应用程序路径以导入没有前缀的组件?

标签 javascript angular typescript single-page-application angular8

我想导入不带任何路径前缀的组件和服务,如下所示:

import { CarService } from 'services/car.service';

来自 Angular 应用程序结构中的文件,如下所示:

carproject
   src
      app (from here)
          components (from here)
             base (from here)
          pages (from here)
          services (from here)

目前 carproject 文件夹中的 tscongif.json 包含此基本 URL:

"baseUrl": "./src",

以及 src 文件夹中的 tscongif.app.json:

"baseUrl": "app" 

应用程序实际上允许以我在这个问题上提供的格式进行导入。应用程序正常启动。

但是Visual Code似乎不理解它。并显示错误:

Cannot find module 'services/car.service'.ts(xxx)

如何正确配置 baseUrls,以便我能够从上述位置导入没有路径前缀的组件和服务,并且 Visual Studio Code 也能够找到这些导入?

最佳答案

您应该更改 tsconfig.json。我假设您的服务代码位于 services 文件夹中,因此我将更改配置

"baseUrl": "./",
"paths": {
   "services/*": ["src/app/services/*"],
 },

然后你可以像这样导入

import { CarService } from 'services/car.service';

关于javascript - 如何在 Visual Studio Code 中设置 Angular 应用程序路径以导入没有前缀的组件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56865241/

相关文章:

javascript - 如何限制某些文件格式上传?

javascript - d3 - 单击时触发的拖动行为

javascript - 在 Tween.js 中为多个对象链接补间

java - 在 Apache ServiceMix 中为 war 启用 CORS

angular - 方法与管道

javascript - 如何在 Angular 8 中使用来自 HTML 输入的 JSON 文件?

Angular 2 - 如何访问回调中的变量并将其显示在 View 上

node.js - Jest/Ts-Jest/Babel : Debug Failure. 错误表达式:输出生成失败

typescript 模块语法

javascript - 使用大数据集中较旧的/未发布的数据进行刷新