2016-06-01 9 views
0

ここでは単純なものが欠けているはずですが、出力イベントを介してオブジェクトを放出する子コンポーネントがあります。親コンポーネントは、このようなテンプレートは、この出力をサブスクライブ:この同じコンポーネントのエクスポートクラス内親コンポーネントの出力バインディングのプロパティを使用します。

<div class="tree-panel-container"> 
    <div class="tree-panel-content"> 
     <content-tree (contextSelected)="contextPanelSelected($event);"></content-tree> 
    </div> 
    <context-panel> 
     <div class="context-panel"> 
      <h2>{{contextTitle}}</h2> 
     </div> 
    </context-panel> 
</div> 

このような関数である:

contextPanelSelected($event) { 
    console.log($event); 
} 

この機能でconsole.logが正しいです、だから私は出力オブジェクトが期待通りに通っていることを知っています。私がしたいのは、この出力オブジェクトのプロパティを使用して、テンプレートに{{contextTitle}}の値を設定することです。

誰でもこの方法を提案できますか?

多くのありがとうございます。次のコードで

contextPanelSelected(value) { 
    console.log(value); 
    this.contextTitle = value; 
} 

(contextSelected)="contextPanelSelected($event)" 

$eventはイベントcontextSelected.emit('some text')を経由して送信されたデータに対応

答えて

0

は次の使用しています。この値は、contextPanelSelectedメソッドのパラメータとして渡すことができます。このメソッドは、このパラメータをコンポーネントのcontextTitleプロパティに設定します。

+0

ありがとうございますThierry、私はこれを試してみましたが、 'Property' contextTitle 'が' ContentComponent '型に存在しないと言っているVisual Studioコードでは、赤い波線になっていましたが、 'contextTitle'を空変数'contextPanelSelected'関数の外ではうまく動作します。おそらく、これはちょうどツールの赤ちゃんだったかもしれません。 – Dan

+1

あなたは大歓迎です! TypeScriptでは、プロパティを使用する前にプロパティを定義する必要があるためです。このようなもの: 'contextTitle:string;'。 –

関連する問題