その種類の一般的な性質と種類を取得する方法を2種類Typescript 2種類の共通プロパティを持つ型を作成する方法は?
interface T1 {
x: number
y: number
}
interface T2 {
y: number
z: number
}
がありますか?
type C = {
[P in keyof A & keyof B]: A[P] | B[P]
}
これは、各キーはA
とB
で存在するであろう新しいタイプを定義しています。
type Common = Something<T1, T2> // { y: number }
うわー、それは働きます! =)私が "in"を理解しているので、オペレータは 'x'や 'z'のような入力をスキップしますか?コンパイラに共通プロパティ型の等価性を確認させる方法はありますか?例えば、yは数字でなければなりません –
'x 'をスキップし、' z'は 'keyof A'と' keyof B'の共通部分です。 * in *演算子は、この交差点に 'C 'のキーがあることを伝えるだけです。 – kube
一般的な型だけを交差させる方法が見つかりませんでしたが、多分方法があります。 – kube