我正在编写一个npm模块中常用的组件,我不知道引用templateUrl
的最佳方式是什么,它正在工作,但我不想在templateUrl
中包含node_modules
,因为node_module目录可以重命名。
是否有其他有效的方法使用它?
例如:"npm:my-commons-ts/my-commons/components/BootstrapAlert/BootstrapAlert.html"
@Component({
selector: "bs-alert",
templateUrl: "node_modules/my-commons-ts/my-commons/components/BootstrapAlert/BootstrapAlert.html",
})
export class BootstrapAlertComponent {
public errors: DisplayMessage[] = [];
public successes: DisplayMessage[] = [];
public warnings: DisplayMessage[] = [];
public infos: DisplayMessage[] = [];
@Input()
public bcn: string = null;
...
}
我使用systemjs
来加载模块
模板不是通过SystemJS加载的,所以你不能使用它的映射。
请注意,您可以使用相对路径,例如../BootstrapAlert/BootstrapAlert.html
,并且某些构建工具也有模板内联,例如gulp-angular-embed-templates
用于gulp
。