我在python中有一个简单的装饰器,我用它来装饰函数
def decorator(fn):
def wrapper(args):
print("calling function")
fn(args)
return wrapper
@decorator
def printMyName(name):
print(name)
printMyName('pengooX')
如果尝试在typescript中写一些类似的东西,它会抛出一个错误。
function decorator(fn){
function wrapper(args){
console.log("calling function")
fn(args)
}
return wrapper
}
@decorator
function printMyName(n){
console.log(n)
}
printMyName('pengooX')
我想知道原始函数装饰器在typescript中是否受支持,如果不支持,你能解释一下它背后的原因吗?我检查了typescript文档,在typescript文档中没有任何关于原始函数装饰器的讨论。
1条答案
按热度按时间iswrvxsc1#
当前TC39标准的装饰器提议只包括装饰类和类成员,如详细的here。扩展document提议支持函数上的装饰器,但这还没有标准化。
TypeScript曾经有自己的装饰器版本(基于以前失败的标准建议),但是如果您正在开始一个新项目,我建议不要使用那些遗留的装饰器。