2017-04-15 49 views
0

textnumber入力に角型FormControlを使用する。私の問題は、両方がテキストとして記録されることです。私はそれが正常に動作しますtype="number"を設定した場合角度FormControlデータ型(数値)?

var control = this._formBuilder.control(this.settings[input.property]); 
control.valueChanges.subscribe((value: any) => { 
    console.log(typeof value); 
    console.log(value); 
}); 

そして、私の入力はthis-

<input [name]="input.property" 
    [formControl]="control" 
    [type]="inputElementType" 
    class="form-control" id="form_control_1" placeholder=""> 

のように見えます。しかし、このように動的であることはdomに正しいタイプを設定しますが、formControlで正しく登録されません。

私は

[type]="inputElementType" 
[type]="getInputElementType()" 
type="{{getInputElementType()}}" 

をtried-きたし、これらのどれも正しくformControlを設定していません。

答えて

0

タイプは@入力ではなくセレクタの一部なので不可能なようです。型を入力として持つ独自のControlValueAccessorを実装できます。ここには、角度からのNumberValueAccessorがあります。

@Directive({ 
selector: 
    'input[type=number][formControlName],input[type=number] 
    [formControl],input[type=number][ngModel]', 
... 
}) 
+0

興味深いです。私はそれが後で問題を引き起こすかもしれないように感じる。今のところ、私は自分のタイプのためのngSwitchを作成し、入力全体を静的タイプでラップします。 –

関連する問題