类装饰器可以同时接收构造函数和其他参数吗?

时间:2016-01-07 08:59:00

标签: javascript class decorator ecmascript-next

我一直在玩Babel和装饰。例如:

function test(target) { 
}

@test
class A {}

我担心的是,是否有某种方法可以对类使用装饰器,并且能够为所谓的装饰器提供参数,并且不会失去将构造函数作为第一个参数的机会:

function test(target, arg1, argN) {
   // target will be "hello", arg1 will be "world" and argN undefined,
   // while I would expect target to be the constructor function
}

@test("hello", "world")
class A {}

1 个答案:

答案 0 :(得分:0)

它以这种方式工作

function test(target, arg1, argN) {
  return function(clazz) {
     console.log(target, arg1, clazz)
  } 
}

@test("hello", "world")
class A {}