Angular 2+保留范围和检测(转换/模板)内容传递给子组件

时间:2018-02-07 18:07:34

标签: angular

我需要传递HTML内容(或ng-template?)才能在子组件中呈现它。有时内容将传递,并且子组件需要知道天气与否(例如,如果没有传递则将具有默认内容)。另外,我希望(transcluded?)内容与传递它的父组件具有相同的范围,或者某种方式来访问此范围。

我知道如何通过翻译来传递HTML(或者可以通过输入传递模板HTML?),但不确定如何通过包含来确定内容是否通过翻译传递。但范围可能是这里的主要问题。

我很确定我已经看到如何将ng-template作为参数/输入传递,但我找不到一个例子。

这样做的标准方法是什么?

1 个答案:

答案 0 :(得分:0)

如果您已经知道如何将模板传递给子项,则可以使用以下方法传递数据。如果需要,这可以是布尔值或包含更多变量的对象。

在父视图中

<app-sub-component [setData]="someData"></app-sub-component>

在子组件中

 @Input()
 set setData(data: any) {
    this.data = data;
}