通常使用语法修饰函数:
@decorate
function x() {
console.log('wow am I decorated')
}
但是,流程尚不支持此语法。一个简单的解决方法是你可以做到
const x = decorate(function() {
console.log('wow am I decorated')
})
但是如何才能在课堂内取得同样的成绩?
class plsWork {
how2decorate() {
console.log('why can I not be decorated :sob:')
}
}
答案 0 :(得分:4)
没有必要做任何花哨的事情。通过Accounts.onCreateUser(function(user){
if (user.gender === 'm') user.avatar = "generic-male.png";
else user.avatar = "generic-female.png";
return user;
});
选项.flowconfig
支持方法装饰器。
对类装饰器的支持刚刚pulled in today,应该进入下一个版本。
答案 1 :(得分:3)
这取决于。由于您不遵守当前标准,因此可以使用类属性:
class plsWork {
how2decorate = decorate(function() {
console.log('why can I not be decorated :sob:')
})
}
另一种方法是在构造函数中添加方法,这是转换器对第一个解决方案的处理方式:
class plsWork {
constructor() {
this.how2decorate = decorate(() => {
console.log('why can I not be decorated :sob:')
});
}
}