私はいくつかの変数とgenericEnum型の変数の1つを含むデータベースからオブジェクトを受け取っています。genericEnumはそのように定義されています。AngularJSとTypeScriptを使用したselectタグの列挙型の双方向バインディング
export enum GenericEnum {
optionOne = 1,
optionTwo = 2,
optionThree = 3,
optionFour = 4,
optionFive = 5,
optionSix = 6
}
だから、今、このオブジェクトがダウン来て、変数はちょうどselectOptionsそれを呼びましょう、ダウンデータベースから来て、私は2つの方法にしようとしているので、
selectOptions: GenericEnum = 4;
4に等しく、その変数をselectタグにバインドします。オプションが選択された場合は「optionSix」、その変数の値は4から6に変更されます。
ここまでは、この問題を解決しようとしているHTMLです。
<select ng-model="$ctrl.myObject.selectOptions">
<option value="1">Option One</option>
<option value="2">Option Two</option>
<option value="3">Option Three</option>
<option value="4">Option Four</option>
<option value="5">Option Five</option>
<option value="6">Option Six</option>
</select>
ページの読み込み時には、読み込み時に変数の現在の値と同じように事前に選択されたオプションが表示されるのが理想的です。したがって、ドロップダウンボックスには「オプション4」と表示されます。次に、「オプション6」を選択してその選択肢を保存し、ページをリロードすると、変数「selectOptions」は6になるので、ドロップダウンボックスは「オプション6」と事前に選択されます
今すぐページを読み込むときに、ドロップダウンボックスが「オプション4」として読み込まれる代わりに空白として読み込まれます。ボックスを展開すると、すべてのオプションが選択できますが、変数selectOptionsは4に等しいので、ドロップダウンボックスがデフォルトでこのオプションを選択すると予想しましたが、そうではないようです。私はそれがTypeScriptがenumをどのように変換するかと関係があると思います。
は、例えば、これは私がNGリピートの(キー、値)の能力を活用について何かを読んでいた別のスタックオーバーフローの私の列挙
Typescript Playground Enum Example
の結果のjavascriptのですが、にそれを得るために失敗しましたそれが私のためのルートではないのだろうかと疑問に思います。
select要素の予想される動作を十分に説明していない場合は、私に知らせてください。より多くの情報を提供しようとすることができます。