0
我应对了一个问题。我想从它的超类动态实例化一个类。 基本上,我有一个AbstractClass和几个继承自这个类的类。Angular2/ionic2 - 动态类instanciation
这里是打字稿游乐场的工作例如:
class AbstractGreeter {
static get(the_msg) {
let class_name = (<any>this).name;
// ... do other things here !
var instance = Object.create(window[class_name].prototype);
instance.constructor.apply(instance, [the_msg]);
return instance;
}
}
class Greeter extends AbstractGreeter {
greeting: string;
constructor(message: string) {
super();
this.greeting = message;
}
greet() {
return "Hello, " + this.greeting;
}
}
let second_greeter = Greeter.get("it's me");
let button = document.createElement('button');
button.textContent = "Say Hello";
button.onclick = function() {
alert(second_greeter.greet());
}
document.body.appendChild(button);
此代码以及在操场上,但我不能让它在我ionic2/angular2应用程序。
错误在于窗口[class_name]未定义。我试图把硬编码的字符串,但它似乎不以同样的方式工作。
有没有办法解决这个问题?
谢谢!
朱利安