1
変数をCar
またはBar
の変数で指定できるようにするにはどうすればよいですか?変数タイプに2つの値のいずれかを指定できます
instanceof
でご使用をラップする必要があり
class Car {
wheels: number;
}
class Bar {
drinks: number;
}
let foo: Car | Bar;
// now foo has to have the fields of Car AND Bar.
// I would like foo to be of type Car, OR Bar
// foo = { wheels: 4} should not raise an error
// foo = { drinks: 4} should not raise an error
'foo:Car & Bar;' 'foo'は両方の型のフィールドを持っていますが、' Car'や 'Bar'を' foo'に割り当てることはできません。両方のタイプのフィールドを持つものを割り当てます。あなたが持っているものは割り当てに関してはうまく動作しますが、どちらか一方になるために必要なアクセスのまわりでタイプガードを使用する必要があります。 – Duncan
あなたのやり方。どちらの場合でもエラーは発生しません。 'foo'はCar ** OR ** Barのフィールドを持っていなければなりません –