Angular2 - 在服务中获取 TemplateRef
Angular2 - getting a TemplateRef inside a service
有没有办法为服务中的现有 html 模板获取 TemplateRef?
问题的上下文(因为我可能一开始就做错了):
我正在创建一个服务,它使用 NgbModal 在弹出窗口中显示一些文本。模态需要一个 TemplateRef 来显示内容,我不知道如何创建。其他选项是传递一个字符串(已转义,我需要显示 html)或传递一个组件(我不知道如何将所需的文本传递给它)。
两种方式
<template>
来自组件模板:
<template>
从外部传递为 child
(未测试)
@Component({
selector: 'foo',
template: '<template #ref1>xxx</template>'
})
class MyComponent {
@ViewChild('ref1') template1:TemplateRef;
constructor(private template2:TemplateRef, private someService:SomeService) {
someService.template2 = template2;
}
ngAfterViewInit() {
this.someService.template1 = this.template1;
}
}
<foo><template>yyy</template>
有没有办法为服务中的现有 html 模板获取 TemplateRef?
问题的上下文(因为我可能一开始就做错了):
我正在创建一个服务,它使用 NgbModal 在弹出窗口中显示一些文本。模态需要一个 TemplateRef 来显示内容,我不知道如何创建。其他选项是传递一个字符串(已转义,我需要显示 html)或传递一个组件(我不知道如何将所需的文本传递给它)。
两种方式
<template>
来自组件模板:<template>
从外部传递为 child
(未测试)
@Component({
selector: 'foo',
template: '<template #ref1>xxx</template>'
})
class MyComponent {
@ViewChild('ref1') template1:TemplateRef;
constructor(private template2:TemplateRef, private someService:SomeService) {
someService.template2 = template2;
}
ngAfterViewInit() {
this.someService.template1 = this.template1;
}
}
<foo><template>yyy</template>