2017-11-10 17 views
1

ngModelを使用してbumpDetail.name配列からプロパティgetを使用してオブジェクトをバンプするときに問題が発生しました。コードスニペットを下に貼り付けました。誰でも私を助けて、それをチェックし、私が間違って行ったことを教えてもらえますか?ありがとうございました。ダイナミック変数を持つngModel

<p *ngFor="let bumpDetail of bumpDetail"> 
    <input type="checkbox" id="device" [(ngModel)]={{bump.bumpDetail.name}}/> 
    <label for="device">{{bumpDetail.name}}</label> 
</p> 
Bump[] = [{ 
"name": "bump_1", 
"status": true 
}, { 
"name": "bump_2", 
"status": false 
}, { 
"name": "bump_3", 
"status": true 
}] 

これは誤りです。

Parser Error: Got interpolation ({{}}) where expression was expected at column 0 in [{{bumpDetail.name}}] in ng:///AppModule/[email protected]:59 ("p *ngFor="let bumpDetail of bumpDetail">

+3

予想される動作は何ですか?何がうまくいかない?エラーメッセージが表示されますか?どの部分が可変で、どの部分にどのような値を含めることができますか? –

+0

私の投稿を編集しました。それを確認する手助けをしてもらえますか? –

答えて

0

[]{{}}が一緒に使用されることはありませんです。いずれか一方であるか

[(ngModel)]="this[bumpDetail.name]" 

{{}}は文字列補間のみです。 [(ngModel)]="bumpDetail.status"

[(ngModel)]またはそのことについては、他のNG-ディレクティブを使用するときは、{{}}は必要ありません:それはあるべき[(ngModel)]={{bumpDetail.name}}

に誤りがあり

0

第2に私はここに何か間違っていると思われる<p *ngFor="let bumpDetail of bumpDetail">あなたの変数の名前が正しいことを確認してください、そして、これらの2は同じであることができません。

私はこれに変更します:bumpDetailArrayはアレイ

+0

ありがとうございます。私は編集しましたが、それは仕事ではありません。 –

+0

同じエラーが発生していますか?または別のエラー? – Venomy

+0

問題がまだ発生します。 –

0

最初{{}}発現および[(ngModel)]である基礎が権利を取得され<p *ngFor="let bumpDetail of bumpDetailArray">は、二つの方法のためのものである()が放出される結合および[]はバインディングのためです。あなたがする必要があるのは[(ngModel)]="bumpDetail.name"のようなものです。それを印刷したい場合は{{bumpDetail.name}}のような式を使う必要があります。上記のように、両方を一緒に使うことはできません。

+0

申し訳ありませんが、私は自分の投稿を編集していました。私はngModelを使用して、プロパティをbumpDetail.name配列から取得するオブジェクトをバンプするための値を出力したい。 –

関連する問題