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]未定義。我試圖把硬編碼的字符串,但它似乎不以同樣的方式工作。
有沒有辦法解決這個問題?
謝謝!
朱利安