角2、RC 5を使用して、新しいモデルオブジェクトを作成するためのフォームを作成しています。ドロップダウンにはモデルのオプションが表示されます。コードをトランジリエートすると、追加の空白<オプション>がドロップダウンに表示されますが、実際にはDOMでは作成されません。これは、リストの一番上に幽霊<オプション>があるかのようです。角2、RC5 - フォームのドロップダウンに「ゴースト」オプションが追加されました
次の例では、 "id"と "name"のパラメータを持つExampleという名前のモデルを作成しました。
import {Component} from '@angular/core';
import {Example} from './example-model';
@Component({
selector: 'my-app',
template: `
<form>
<h2>Dropdown</h2>
<select name="name" [(ngModel)]="example.name">
<option [value]="">Choose one</option>
<option *ngFor="let option of dropdown" [value]="option.val">
{{option.name}}
</option>
</select>
</form>
`,
})
export class AppComponent {
public example: Example;
public dropdown: {val: number, name: string}[] = [];
public ngOnInit(): void {
this.example = new Example();
this.dropdown = this._getDropdownValues();
}
private _getDropdownValues(): {val: number, name: string}[] {
return [
{val: 10, name: "Name #1"},
{val: 20, name: "Name #2"},
{val: 30, name: "Name #3"}
];
}
}
は、なぜ私は私のドロップダウンにゴースト<オプション>を取得していますか?
完全な例はPlunkrです。残念ながら問題を解決する方法についてのコメントを提出しました。
を選択しておきたいならば、あなたはこのような何かを探していると思います。これはどのように機能しますか? – ebakunin
「ゴースト」オプションを消すには、この値を割り当てる必要があります。これをあなたのコードで解釈し、そこに置かれた "XX"などを空白の値に関連付けます。 – TheCount