我想在服务中使用模板引用。例如:
// A component template that I want to use. Can be located anywhere.
<ng-template #announcement_tpl let-data="data">
<div>{{data.title}}</div>
<div>{{data.message}}</div>
</ng-template>
// Called from a callback in an injectable Service, outside the component class.
this.notification_service.template(announcement_tpl)
我刚刚实现了this solution。它可以工作,但是我不确定这是否是一个好习惯。请注意,this.notification_service.template
不是从组件调用的,而是从服务的回调内部调用的,因此模板不能简单地传递给此方法。我认为理想的解决方案是导入组件并以某种方式从组件中取出模板,除非当然有更好的方法可以做到这一点。