是否可以在变量中加上一些标记,以便我可以传递它 进入儿童成分?例如,我有三个控件 只有错误信息不同。我想只有一个控件 并将错误html或整个错误组件作为参数传递。我可以 用文字做但不用html。这是想法的草图:
@Component({
selector: 'app',
template: `
<template #rr>
<div>text</div>
</template>
{{rr}}
`
})
export class App {
}
预期产出:
<div>text</div>
答案 0 :(得分:3)
我正确理解您的问题(向其他组件提供一些内容),我认为您可以利用ng-content
:
@Component({
selector: 'template',
template: `
<div>
<ng-content></ng-content>
</div>
`
})
export class TemplateComponent {
(...)
}
并使用App
之一中的组件:
@Component({
selector: 'app',
template: `
<template #rr>
<div>text</div>
</template>
`,
directives: [ TemplateComponent ]
})
export class App {
}
如果您想在TemplateComponent
中引用ng-content中的内容,可以使用@ContentChild
装饰器(请参阅https://angular.io/docs/ts/latest/api/core/ContentChild-var.html)。