簡體   English   中英

如何擴展父 class 方法 object 文字返回類型?

[英]How extend a parent class methods object literal return type?

我用serialize方法擴展了 class 。 它應該和它的父級做同樣的事情,但 append 一些鍵。

export declare class Parent {
    serialize(): {
        x: number;
        y: number;
    };
}
export default class Child extends Parent {
    serialize() {
        return {
            ...super.serialize(),
            something: 'extra'
        };      
    }
}

我想為我的擴展提取一個類型——比如SerializedChild 在這種情況下是否有可能,如果可以,我該怎么做?

結束了這個

type SerializedChild = {
    // Manually readd properties from Parent.serialize
    x: number;
    y: number;
    // Add any "extensions"
    something: string
    
}

class Child extends Parent {
    serialize() : SerializedChild {
        return {
            ...super.serialize(),
            something: 'extra'
        };      
    }

    // ...
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM