深入探索 TypeScript 与 Webpack:高级特性与应用
1. Decorator Factories
有时候,我们希望向装饰器传递信息,以改变装饰器的行为。这时可以创建装饰器工厂,简单来说,它是一个返回函数的函数。返回的函数是实际的装饰器函数,而返回该函数的函数就是装饰器工厂。
以下是示例代码:
function logConstructorFactory(inEnabled: boolean) {
if (inEnabled) {
return function(inConstructor: Function) {
console.log(inConstructor);
}
} else {
return function() { };
}
}
@logConstructorFactory(true)
class Spaceship {
constructor() { console.log("Spaceship constructor"); }
}
@logConstructorFactory(false)
class Spacestation {
constructor() { console.log("Spacestation constructor"); }
}
const s = new Spaceship();
const t = new Spacestation();
在上述代码中, logConstructorFactory() 是工厂函数,它返回的函数
深入探索 TypeScript 与 Webpack 高级应用
超级会员免费看
订阅专栏 解锁全文
26

被折叠的 条评论
为什么被折叠?



