2016-12-07 2 views
1

Я хотел бы вызвать метод для дочернего компонента из класса моего родителя. Я читал о ViewChild или локальной переменной, но моя проблема в том, что дочерний компонент является внешним модулем.Angular2 вызов метода на дочернем компоненте из родительского класса

Мой родительский компонент - «carto.component», и он содержит «sebm-google-map», который является угловым модулем для карт Google.

В настоящее время, я вызываю метод triggerResize так:

<sebm-google-map #map [latitude]="lat" [longitude]="lng" (click)="map.triggerResize()"> 

Чтобы сделать мою карту повторного розыгрыша. Я хотел бы вызвать этот метод из родительского компонента, который включает в себя карту.

+0

https://angular.io/docs/ts/latest/cookbook/component-communication.html#!#bidirectional-service –

+0

Я не понимаю, как это может мне помочь – Morgan

+0

См. Комментарии ниже моего ответа здесь http : //stackoverflow.com/questions/41021892/global-component-with-angular2/41021950#41021950 –

ответ

2

Вы пытались добавить ссылку на дочерний элемент вида на свой «carto.component»?

например.

@ViewChild('map') childMap: any; 

onTrigger(){ 
    childMap.triggerResize(); 
} 

Затем в шаблоне ...

<sebm-google-map #map [latitude]="lat" [longitude]="lng" (click)="onTrigger()">

Если это не то, что вы после этого, может быть, вы можете уточнить свой вопрос на примере.

+0

Я не очень хорошо понял ViewChild раньше, теперь это лучше, спасибо! – Morgan

Смежные вопросы