小编Kha*_*med的帖子

在 TypeScript 中扩展单例类

我正在尝试扩展和重写 TypeScript 中单例类中的方法,这是单例类的代码

class Singleton {
    protected static _instance: Singleton;

    protected constructor() { }

    public static get instance() {
        if (Singleton._instance === undefined) {
            Singleton._instance = new Singleton();
        }

        return Singleton._instance;
    }

    public doWork() {
        console.log('doing work in singleton...');
    }
}
Run Code Online (Sandbox Code Playgroud)

扩展单例类:

class ExtendedSingleton extends Singleton {
    protected static _instance: ExtendedSingleton;

    protected constructor() {
        super();
    }

    public static get instance() {
        console.log('Creating Extended Singleton');
        if (ExtendedSingleton._instance === undefined) {
            ExtendedSingleton._instance = new ExtendedSingleton();
        }

        return ExtendedSingleton._instance;
    }

    public doWork() …
Run Code Online (Sandbox Code Playgroud)

design-patterns typescript

5
推荐指数
1
解决办法
3156
查看次数

标签 统计

design-patterns ×1

typescript ×1