2017-06-18 5 views
0

ルックアップコンポーネントの変更を検出する方法については、ドキュメントのどこにも見つけることができません。同様に、PickのようにngModelを使用しない他のコンポーネントも同様です。 2ヶ月以上応答がない場合でも関連するissue on GitHubがあります。ここでルックアップの変更をリッスンする方法

は、サンプルコードされています

<ngl-lookup [(value)]="value" [lookup]="lookupAsync" field="formatted_address" [(pick)]="address"> 
    <template nglLookupLabel>Type an address:</template> 
    <div nglLookupHeader class="slds-text-body--small">Most relevant cities</div> 
    <template nglLookupItem let-ctx> 
    <div class="slds-media__body"> 
     <div class="slds-lookup__result-text">{{ctx.formatted_address}}</div> 
     <span class="slds-lookup__result-meta slds-text-body--small">Place ID: {{ctx.place_id}}</span> 
    </div> 
    </template> 
</ngl-lookup> 

と関連pluckerは、 "ルックアップ" のセクションで構成ページで確認することができます:

私は何かが足りないのですか?私は本当に多くのコンポーネントがngModelを使用していないのを見て混乱しています。

ご協力いただきありがとうございます。構文上

+0

あなたは、私は彼らのウェブサイトに置かれた原稿pluckerを参照して、 – Skeptor

+0

を投稿する前に、あなたのplnkrを保存@Skeptorありがとうございませんでした。私はそれが正常なリンクではなかったことに気付かなかった。代わりにコンポーネントページへのリンクを提供しました。 – Bielik

+0

あなたの要件を私に教えてください。検索に入るたびに何かしたいのですか?あなたはコンポーネントでイベントを処理できるようにしたいですか? – Skeptor

答えて

1
[(pick)]="address" 
  1. 結合双方向のデータです。この意味では、コンポーネントから入力と入力にデータをバインドします。
  2. それはsetSuperheroセットがthis.superheroに値を更新[pick]="superhero" (pickChange)="setSuperhero($event)"

へのショートカットです。

あなたの問題への解決策:これまで

変更[(pick)]="superhero":コンポーネント内部

[pick]="superhero" (pickChange)="superheroPicked($event)" 

superheroPicked(superhero){ 
    this.superhero = superhero; 
    console.log(superhero); 
} 

上記は、選択したときに新しい値にスーパーヒーローを設定してもプリントされますコンソールの値。

Plnkr関連資料:https://plnkr.co/edit/FaTlh3wzreKkaKZORjKx?p=preview

+0

あなたのお手伝いをありがとう、それは私が必要としていたものです。私はそれも "ピック"コンポーネントで動作することがわかります。今私は質問する必要があります、私はドキュメントで何かを逃したのですか?また、なぜこのように行われたのか知っていますか?フォームなどで使用するのが難しくなると思います.ControlValueAccessorを実装することに基づいて独自のコンポーネントを作成する必要があります。それとも、私は何かをもう一度見逃していますか – Bielik

+0

角度の一般的な慣例。ライブラリのソースコードをチェックして、同じ規則に従っていることを確認しました。それがあなたの問題に答えるならば、これを答えにすることができますか?それは他人の時間を無駄にしない。 – Skeptor

+0

その複雑な形でもありません。私は彼らもフォームコンポーネントと統合されていると確信しています。このフレームワークでは決して作業しませんでした。あなたがトラブルを見つけたら戻ってください – Skeptor

関連する問題