在tsconfig.json上使用路径并没有使用角度

时间:2017-07-05 15:33:40

标签: angular typescript webpack angular-cli

为了避免导入文件时的相对路径,我尝试配置angular来理解路径。

到目前为止,它根本没用,我的代码:

//tsconfig.app.json
"compilerOptions":{
    //lot of things . If it matter moduleResultion is set to node
    "baseUrl": ".",
    "paths": {
        "@modules": ["app/modules/"]
        ...
    },
}



//in a component: 
import { X } from '@modules/Y/component/index'

运行ng serve时,控制台会输出有关以下内容的错误:: Cannot find module '@modules/Y/component/index'.

这绝对与import { X } from ../../../modules/Y/component/index

之类的相对路径一起使用

所以,我希望我的tsconfig.app.json或者tsconfig.json(或者两者都是)是错误的,但是,我找不到任何关于如何正确地为角度应用做这件事的好教程。

目前使用角度4和基本关联工具(typescript 2.3.3,angular-cli 1.0.6并提供webpack)

你能指出这个问题,或者给我一个好的doc / tuto来解决这个问题吗?到目前为止我在SO或github问题上看到的所有答案根本没有用。

注意:架构看起来像这样

project
   |
   -tsconfig.json //had try things on this one too but does nothing.
   -src/
     |
     -tsconfig.app.json
     -app/
       |
       -modules
       -othersFolder

1 个答案:

答案 0 :(得分:4)

您的代码应与

一起使用
"paths": {
  "@modules/*": ["app/modules/*"]
  ...
}

在这里阅读有关打字稿中模块分辨率的更多信息

https://www.typescriptlang.org/docs/handbook/module-resolution.html#path-mapping