Typescript d.ts ファイルで定義されたインターフェースプロパティタイプをオーバーライドする 質問する

Typescript d.ts ファイルで定義されたインターフェースプロパティタイプをオーバーライドする 質問する

*.d.tsTypeScriptで定義されたインターフェース プロパティのタイプを変更する方法はありますか?

例えば、インターフェースはx.d.ts次のように定義されます。

interface A {
  property: number;
}

私が書き込むTypescriptファイルでそれを変更したい

interface A {
  property: Object;
}

あるいはこれでもうまくいく

interface B extends A {
  property: Object;
}

この方法は機能しますか? 私のシステムで試したときには機能しませんでした。それが可能かどうかを確認したいだけです。

ベストアンサー1

最初にフィールドをフィルタリングし、次にそれらを結合する方法を使用します。

参照タイプからプロパティを除外

interface A {
    x: string
}

export type B = Omit<A, 'x'> & { x: number };

インターフェース:

interface A {
    x: string
}

interface B extends Omit<A, 'x'> {
  x: number
}

おすすめ記事