覆盖Angular2(typescript)上的JavaScript NAME属性

时间:2017-09-08 09:14:57

标签: angular typescript draw2d-js

我在angular2(draw2d-wrapper)上使用draw2d。我试图从他们那里扩展一个班级。

export class Table extends (draw2d.shape.layout.VerticalLayout as { new(): any }) {
    static NAME: "Table";
    /*Some code*/
}
我的代码上的

var t = new Table();

t.NAME属性来自" draw2d.shape.layout.VerticalLayout"。

我可以在angular2打字稿代码中覆盖此JavaScript属性吗?

1 个答案:

答案 0 :(得分:0)

由于您尝试访问表实例上的属性,因此它不是真正的静态属性。简化您的示例,这有效:

class VerticalLayout {
  NAME = "VerticalLayout";
}

class Table extends VerticalLayout  {  
  NAME = "Table";
}

new Table().NAME; // Table

我希望同样适用于从draw2d.shape.layout.VerticalLayout

派生