在打字稿中,我有一个这样的模块:
export module ABC{
export class classA {
}
}
我想从 B 类继承 A 类。
class classB {
}
如果我做这样的事情
export module ABC{
export class classA extends classB {
}
}
编译器告诉我 classB 必须是一个类。顺便说一句,classB 位于一个单独的文件中。
我怎样才能让它工作???提前致谢
行,
我决定不扩展内部类,而是定义一个模块和另一个模块的内部类的内部实例属性。就像这样:
文件1.ts
export module moduleA {
export class classA {
subscribed: bool;
constructor () { }
public unsubscribeLogOff(eventName) {
this.subscribed = false;
}
public subscribeLogOff(eventName) {
this.subscribed = true;
}
}
}
文件2.ts
import m = module("moduleA");
export module moduleB {
var instanceA: m.moduleA.classA = null;
export function activate() {
if( this.instanceA == null ) instanceA = new m.moduleA.classA();
instanceA.subscribeLogOff(eventName);
}
export function deactivate() {
if( instanceA == null ) return;
instanceA.unsubscribeLogOff(eventName);
}
}
这里的问题是,我希望在调用subscribeLogOff之后,classA的subscribed属性保持其值,因此在调用unsubscribeLogOff时, subscribed的值是 true。
但是,当我调用unsubscribeLogOff时,这不是真的subscribed的值是undefined。
我无法理解。你能帮助我吗 ???
谢谢