私はTypescriptでクラスを持っています。それは私がすべてのオブジェクトのフィールドを介して、私はいくつかの変更を実行する必要があるタイプnumber
のフィールドにループにしようとした別のクラスのいくつかの機能にはいくつかのフィールドTypescriptでフィールドタイプを取得
field1 : ko.observable<number>();
field2 : ko.observable<string>('');
...
を持っています。
これはどのように検出できますか?
私は次に試しましたが、論理的にはstring
とタイプされています。 locationModel
はあなたの問題は、フォームからの入力値が常に文字列になるだろうということです、あなたがそれらのタイプにするために、適切な値を解析する必要が入力はタイプtext
Object.keys(locationModel)
.forEach(property => {
if (typeof locationModel[property]() === 'number') { }
else{ }
}
});
私は同意します。とにかくオブザーバブルを特定のタイプに強制することができるかどうかはわかりませんが、これはどのように動作するのでしょうか。しかし、完全に[extenders](http://knockoutjs.com/documentation/extenders.html)を使ってノックアウト値を自動的に変換することは可能です。 – Tomalak
@Tomalakタイプスクリプトの観点から見ると、オブザーバブルタイプを特定のタイプにタイプすると、TSのタイピングのほとんどのように、実行時にそれらの制約がすべて失われても、コンパイル時にはすべてokです。 – Alex
正確に。 OPは、誤ってTypeScriptに実行時の型変換が関係すると思われますか? – Tomalak