【问题标题】:How do I properly set up a path in tsconfig.ts?如何在 tsconfig.ts 中正确设置路径?
【发布时间】:2020-08-17 15:14:38
【问题描述】:

我正在处理一个项目,我希望能够设置自定义路径以便更快地访问,但我不断收到错误“找不到模块 @env/environment”。

这是我的路径: Path config

{ 
 "compileOnSave": false,
 "compilerOptions": {
 "baseUrl": "./",
 "paths": {
   "@env/*": ["./src/environments/*"],
   "@core/*": ["./src/app/@core/*"]
 },
 "outDir": "./dist/out-tsc",
 .
 .
 .

当我尝试在组件中导入它时,它没有找到它。我做错了吗?

这是我目前的设置:

Angular CLI:8.3.26 节点:12.16.1 操作系统:达尔文 x64 角度:8.2.14

Visual Studio 代码:1.44.2

【问题讨论】:

    标签: angular visual-studio-code tsconfig


    【解决方案1】:

    请这样做

    "paths": {
       "@env/*": ["src/environments/*"],
       "@core/*": ["src/app/@core/*"]
     },
    

    这里不需要./,因为您在基本网址中指定./

    请记住,您要引用的路径,它将您的 baseUrl 作为您指向的路线的基础,并且它是强制性的,如文档中所述。

    字符“@”不是强制性的。

    按照这种方式设置后,您可以像这样轻松使用它:

    import { Yo } from '@core/index';
    

    您可能会注意到的唯一一件事是智能感知在当前最新版本中不起作用,因此我建议遵循索引约定来导入/导出文件。

    你也可以查看这个例子

    https://github.com/ialex90/TypeScript-Node-Starter/commit/a4e8cc1f8f8d5176e0099e05b51f97b0ef4bebea

    【讨论】:

    • 乐于助人 :-)
    【解决方案2】:

    不妨试试这个:

    npm i --save module-alias
    

    Taken from here

    【讨论】: