在 TypeScript 中扩展和实现 class
extends and implements in one class in TypeScript
我可以在 TypeScript 中执行此操作吗?
export interface IMyInterface {
doSomething(): void;
}
export class MyBaseClass {
myBaseClassHasProperty: string;
constructor(){
this.myBaseClassHasProperty = 'some value';
}
myBaseClassHasMethods(): void {
console.log(this.myBaseClassHasProperty);
}
}
export class MyClass extends MyBaseClass implements IMyInterface {
constructor() {
super();
}
doSomething(): void {
this.myBaseClassHasMethods();
}
}
在运行时抛出:
Uncaught ReferenceError: MyBaseClass is not defined
in runtime i get this Uncaught ReferenceError: MyBaseClass is not defined
是的,你可以做到。您发布的代码可以正常工作。
但是我怀疑在你的实际代码中你将它拆分成多个文件并且MyBaseClass
在未执行之前MyClass
的代码。
修复 JavaScript 排序或使用外部模块让模块加载程序确定排序。
我可以在 TypeScript 中执行此操作吗?
export interface IMyInterface {
doSomething(): void;
}
export class MyBaseClass {
myBaseClassHasProperty: string;
constructor(){
this.myBaseClassHasProperty = 'some value';
}
myBaseClassHasMethods(): void {
console.log(this.myBaseClassHasProperty);
}
}
export class MyClass extends MyBaseClass implements IMyInterface {
constructor() {
super();
}
doSomething(): void {
this.myBaseClassHasMethods();
}
}
在运行时抛出:
Uncaught ReferenceError: MyBaseClass is not defined
in runtime i get this
Uncaught ReferenceError: MyBaseClass is not defined
是的,你可以做到。您发布的代码可以正常工作。
但是我怀疑在你的实际代码中你将它拆分成多个文件并且MyBaseClass
在未执行之前MyClass
的代码。
修复 JavaScript 排序或使用外部模块让模块加载程序确定排序。