如何在Visual Studio 代码中设置Angular 应用程序路径以导入不带前缀的组件?
How to set up Angular app path to import components without prefix in Visual Studio Code?
我想导入没有任何路径前缀的组件和服务,像这样:
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",
和 tscongif.app.json 在 src 文件夹中:
"baseUrl": "app"
应用程序实际上允许以我在此问题之上提供的格式进行导入。应用程序正常启动。
但是Visual Code好像看不懂。并显示错误:
Cannot find module 'services/car.service'.ts(xxx)
如何正确配置 baseUrls,以便我能够从上述位置导入没有路径前缀的组件和服务,以便 Visual Studio Code 也能找到这些导入?
你应该改变你的tsconfig.json。我假设您的服务代码在服务文件夹中,所以我将更改配置
"baseUrl": "./",
"paths": {
"services/*": ["src/app/services/*"],
},
然后你可以这样导入
import { CarService } from 'services/car.service';
我想导入没有任何路径前缀的组件和服务,像这样:
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",
和 tscongif.app.json 在 src 文件夹中:
"baseUrl": "app"
应用程序实际上允许以我在此问题之上提供的格式进行导入。应用程序正常启动。
但是Visual Code好像看不懂。并显示错误:
Cannot find module 'services/car.service'.ts(xxx)
如何正确配置 baseUrls,以便我能够从上述位置导入没有路径前缀的组件和服务,以便 Visual Studio Code 也能找到这些导入?
你应该改变你的tsconfig.json。我假设您的服务代码在服务文件夹中,所以我将更改配置
"baseUrl": "./",
"paths": {
"services/*": ["src/app/services/*"],
},
然后你可以这样导入
import { CarService } from 'services/car.service';