小编jwx*_*jwx的帖子

修改对象实例的TypeScript类装饰器

我正在为Aurelia制作一个插件,需要一个类装饰器

  1. 将属性添加到新对象实例,和
  2. 使用新对象作为参数调用外部函数.

我已经看了一些例子,到目前为止我已经把它放在了一起("伪ish"代码)

return function addAndCall(target: any): any {
    var original = target;

    var newConstructor = function (...args) {
        original.apply(this, args);
        this.newAttribute = "object instance value";
        ExternalModule.externalFunction(this);
    };

    newConstructor.prototype = Object.create(original.prototype);
    newConstructor.prototype.constructor = original;

    return <any>newConstructor;
}
Run Code Online (Sandbox Code Playgroud)

  • 我不清楚这里的细节(或实际需要的东西),以及
  • 它可能无法正常工作,因为当使用从这个装饰器的类实例化的对象时我得到了Aurelia错误(我怀疑它是我的装饰器而不是Aurelia框架的错误).

任何帮助和解释将不胜感激!

class decorator instances typescript aurelia

8
推荐指数
1
解决办法
3479
查看次数

标签 统计

aurelia ×1

class ×1

decorator ×1

instances ×1

typescript ×1