嗨,我想弄清楚打字本是怎么知道麦角的,它是怎么知道怎么导入的。我知道,从Javascript级别上,可以将其配置为告诉SystemJS在何处查看,但从类型记录级别上,我可以了解实现这一目标的位置。
我的当前应用程序具有以下结构:

当加载本机角2组件时,我们有以下导入url:
从“@角/核心”导入{Component};
通过这种方式,类型记录知道它可以找到libs/@转角中的组件。
我知道,在javascript级别上,这样的配置如下所示:
(function (global) {
// map tells the System loader where to look for things
var map = {
'app': 'app', // 'dist',
'@angular': 'libs/@angular',
'angular2-in-memory-web-api': 'libs/angular2-in-memory-web-api',
'rxjs': 'libs/rxjs',
'@commercify': 'app'
};
.....
var config = {
map: map,
};
System.config(config);}(这);
正如我所看到的,我已经创建了“商业化”:“app”,它应该指向app,但这并不能说明任何类型的文字。我如何配置类型记录,让它知道@商业化在哪里找到的?
目前,我正在Visual中获得用于此导入的无法找到的模块:
import { CategoriesComponent } from '@commercify/catalog/categories/categories.component';运行中的url如下所示:
从'../../catalog/categories/categories.component';‘导入{ CategoriesComponent }
我想避免添加../../直接指向根文件夹
发布于 2017-01-30 09:30:58
实际上,您需要的是"non-relative"导入。
在tsconfig.json中添加以下内容,如果需要,请重新启动VS代码
"module": "systemjs",
"moduleResolution": "node"模块解析在类型记录中的工作方式
https://www.typescriptlang.org/docs/handbook/module-resolution.html
https://stackoverflow.com/questions/38314280
复制相似问题