2017-10-13 15 views
0

と私はデータは、HTMLを選択して、それを通じてコン​​ポーネント ループに取り込まれ、anuglar 4プロジェクトを、開発していますが、私はそれの名前4角 - ngfor ngifエラー

に応じて選択するように、特定のオプションをマークしたいです コード

<select class="form-control" id="exampleSelect1"> 
    <option *ngFor="let field of fields" *ngIf="field.name == 'Select me'; then selected='true'">{{field.name}}</option> 
</select> 

が、エラーでngfor

ngif使用している場合、それは働いていない

Error: Template parse errors: 
Can't have multiple template bindings on one element. Use only one attribute named 'template' or prefixed with * 
+0

instaedを選択するためのプロパティを= "フィールド[選択] [選択]。 name ===オプションを選択するための 'Select me'プロパティ。 – JayDeeEss

+0

@JayDeeEssは正しいアイデアを持っています。これは本当に、本当に 'ngIf'の目的ではありません。 –

答えて

1

の代わりに使用することができますngIf = "field.name === '私の選択'" オプションは、使用することができます* ngIfの

<select class="form-control" id="exampleSelect1"> 
     <option *ngFor="let field of fields" [selected]="field.name==='Select me'">{{field.name}}</option> 
    </select> 
+0

属性を表示したくない場合は 'null'を返すべきです。私はこの方法で、すべてのオプションが選択された属性を持つと思います。 –

+0

あなたは間違いなくそれを行うことができますが、これは他のすべてのものと同様に行います。一致しないとfalseを返し、それは選択されません! – JayDeeEss