0
저는 angular2 (draw2d-wrapper)에 draw2d를 사용하고 있습니다. 나는 그 (것)들에게서 종류를 확장하는 시험이다. 내가 var t = new Table();
Angular2 (typescript)의 JavaScript NAME 속성을 덮어 씁니다.
을 내 코드에
export class Table extends (draw2d.shape.layout.VerticalLayout as { new(): any }) {
static NAME: "Table";
/*Some code*/
}
는 t.NAME 속성은 "draw2d.shape.layout.VerticalLayout"로왔다.
angular2 typescript 코드에서이 JavaScript 속성을 무시할 수 있습니까?
에서 유도하기위한 작업 같은 기대
, 지금 문제는 방법 것은 (draw2d.shape의 슈퍼 클래스입니다. layout.VerticalLayout) eval 메서드를 사용하여 객체의 새 인스턴스를 만듭니다. var o = eval ("new"+ element.type + "()"); 이름이 "draw2d ....."인 경우 오류가 없지만 하위 클래스에서 재정의하는 메서드가 호출되지 않습니다. element.type이 "Table"인 경우이 오류 메시지가 표시됩니다. ""id ... rshal이있는 그림 유형 'Tabela'를 draw2d.io.json.Reader로 인스턴스화 할 수 없습니다. –