2017-10-11 75 views
1

对于哪些关键字我应该去学习如何配置我的角度应用能够加载我的内部模块具有以下内容:角2路设置

import { MyModule } from 'cool/short/path';

代替:

import { MyModule } from './../../../modules/MyModle/my-module';

我经历了一些教程提及如何配置整个应用程序使用某种绝对路径标记,但是有可能配置罪gle模块以这种方式?作为一个值得注意的例子,我会提到Angular模块,这些模块总是以@引用,并且来自任何项目位置的相同路径。

+0

如果您使用的是TypeScript 2.0+,这里有一个很好的答案: https://stackoverflow.com/questions/34925992/how-to-avoid-imports-with-very-long-relative-paths-in- angular-2 –

回答

3

我想,你问的是TypeScript编译器选项的属性。看看这个document describing baseUrl

由于我们在谈论import ...指令,因此与Angular无关。您需要将其设置在您的tsconfig.json文件中。

你的“非相对路径”(那些没有..)将启动baseUrl解决。所以,从技术上讲,它们仍然是相对的。区别在于相对于当前文件,它们将相对于您指定的目录。如果您愿意,您仍然可以使用基于..的导入。你甚至可以在同一个文件中混合导入样式...

+0

是的,我知道这个功能与Angular本身无关,Angular只是一个例子:)谢谢你的帮助 – Tomas

0

OP在这里再次提到,我想提到一个重要的“非相对路径”问题。由于Igor Soloydenko answer提到了tsconfig.json文件,对于我自己而言,它在修改tsconfig.app.json文件后正常工作,该文件实际上扩展了基地tsconfig.json,但即使只从应用程序文件级别工作,我的更改仍然有效。