メインコンポーネント:角度* 2のテンプレート変数はどのように動作しますか?
Htmlの上記のコードで
<event-thumbnail *ngFor='let event1 of events' #thumbnail [event2]="event1" (eventClick)='handleEventClicked($event)'>Hello</event-thumbnail>
<button class='btn btn-primary' (click)="thumbnail.alertFoo()">alert id</button>
<button class='btn btn-primary' (click)='thumbnail.handleClickMe()'>click me!</button>
イベントサムネイルComponenent
alertFoo(){
alert("id called");
}
handleClickMe(){
this.eventClick.emit('foo');
alert('click');
}
私はサムネイルを使用して、ボタンを使用することができません - >テンプレート変数* ngForすなわちを使用。 alertFooとhandleClickMe()はサムネイルで呼び出されません。私はdivの中にそれをラップしようとしましたが、まだそれは動作しません。それは、div内のコード全体を* ngForで囲んでいるとき、つまり望ましくない複数のボタンを表示するボタンの場合にのみ機能します。私は、イベントを繰り返すが、ボタンは一度しか表示されないようにするために、ngForワークがどのように動作するかを理解したい。
?接頭辞「サムネイル」とは何ですか?確かに、私は尋ねている理由です。この問題を解決するためのコードはごくわずかです。もしあなたがプランナーで問題を再現できるのであれば最高ですね:)# – Alex
@ AJT_82私は上記のコードは自己説明的だと思います..... angular2 #thumbnailはテンプレートの変数です私はalertzfoo()とhandleClickMe()メソッドを呼び出すようにしようとしています上記のコードスナップでは動作していないテンプレート変数のサムネイルを介してイベントサムネイルコンポーネントを表示するdiv内のすべてをカプセル化するとき私はそれとして私のページにまた、ngForの一部になります。 –
コードはわかりやすいものではありませんでしたが、ここではこれらのメソッドがどこにあるか、つまりイベントサムネイルコンポーネントで提供されているので、もっと明確になりました。 – Alex