我有两个使用TypeScript开发的Web应用程序,它们使用一些共享代码。
例如,在.so
中,我有共享代码的import语句,例如,
apps/app1/components/app1.component.ts
同样在import {ClassA} from '../../../shared/classA';
import {ClassB} from '../../../shared/classB';
中,我有相同的import语句,即
apps/app2/components/app2.component.ts
其中import {ClassA} from '../../../shared/classA';
import {ClassB} from '../../../shared/classB';
和ClassA
分别位于ClassB
和apps/shared/ClassA
。
目前,要在浏览器中加载这些共享模块,我必须使用以下map和packages语句更新apps/shared/ClassB
和apps/app1/systemjs.config.js
,
apps/app2/systemjs.config.js
如果我只有两个类(map: {
'classA': 'apps/shared',
'classB': 'apps/shared
},
packages: {
'classA': {main: 'classA', defaultExtension: 'js'},
'classB': {main: 'classB', defaultExtension: 'js'}
}
和classA
),这很好,但随着classB
中类的数量增加,开始变得更难维护。有什么办法可以告诉systemJs在一个语句中加载apps/shared
中的所有模块吗?像
apps/shared
同时保持我的TypeScript源中使用的相对模块分辨率(即上面的import语句)?
答案 0 :(得分:0)