2017-04-19 67 views
0

我正在尝试创建一个充满可重用Angular组件和模块的目录。在我的情况下,我设置了一个名为'SharedComponentsModule'的模块,该模块导出此目录中的所有组件。由于此目录将在不同的角度应用程序之间共享,因此它将存在于应用程序目录之外(即C:\ shared_tools)。共享模块和所有共享组件将位于此目录中。我试图在tsconfig.json中设置路径来直接访问这个目录,但没有运气。我的IDE和角度应用程序都不认识这个参考。我有一种感觉,我可能会误解如何设置它。如何正确引用外部目录。先谢谢你。Angular 2/4/x和Typescript中的本地外部组件库

{ 
    "compilerOptions": { 
    "baseUrl": ".", 
    "paths": { 
     "sharedLibrary": ["C:\\shared_tools\\*"] 
    }, 
+0

你可能会更好地创建一个NPM包。如果你不想发布它,你不必在本地链接它。我这是你愿意尝试的吗? –

回答

1

Typescript不支持绝对路径。

您可以在每个文件中直接使用相对路径import shared from '../../../shared_tools'

"compilerOptions": { 
    "baseUrl": ".", 
    "paths": { 
     "sharedLibrary": ["../../../shared_tools"] 
    }, 

一个常见的模式是将模块发布到私人/本地NPM库,然后将其安装作为第三方模块:

与像相对路径

或者使用路径如你所说,但仍来自package.json的node_modules

相关问题