es7 decorators

by Zero Yu

Babel + JSX

class Test {
  @log
	say() {
  	console.log('say')
  }
}

function log(target, name, descriptor) {
  var oldValue = descriptor.value;

  descriptor.value = function() {
    console.log('before');
    const result = oldValue.apply(this, arguments);
    console.log('after')
  };

  return descriptor;
}

var g1 = new Test()
console.log(g1)
g1.say()

/* console.log('location=',Group1.location)
console.log('location=',Group2.location)
console.log('location=',Group3.location) */