当一个组件在另一个组件内时,它叫什么? 喜欢在
<agm-map [latitude]="lat" [longitude]="lng">
<agm-marker [latitude]="lat" [longitude]="lng"></agm-marker>
</agm-map>
它是如何工作的?
答案 0 :(得分:1)
您必须使用ng-content
<ng-content></ng-content>
<ng-content select="agm-marker"></ng-content>
您必须将两个组件声明为:
AGM-map.component.ts
@Component({
selector: 'agm-map',
template: '<ng-content></ng-content>
<ng-content select="agm-marker"></ng-content>'
})
export class AgmMapComponent {
...
}
AGM-marker.component.ts
@Component({
selector: 'agm-marker',
template: '<div>Marker</div>'
})
export class AgmMarkerComponent {
...
}
但我想你想将纬度/经度传递给你的子组件,因为你可以阅读有关如何将数据从父组件传递到子组件的文档here
答案 1 :(得分:0)
我很确定,中间组件不会被渲染。这是一个无效的sytax。
但是,您可以使用至少2个不同的组件创建递归组件模式,如下所示:
在“recursion-container”组件的html中:
<agm-map ....
在agm-map component.html中:
<recursion-container"...
所以你基本上需要一个中间层。
关于基本组件通信,you can read the documentation