【发布时间】:2020-11-21 18:02:21
【问题描述】:
我有两个类 ClassA 和 ClassB 如下:
interface IClassA {
functionA: ()=> void
}
class ClassA implements IClassA{
functionA(){
console.log('hello world A')
}
}
interface IClassB {
functionB: ()=> void
}
class ClassB implements IClassB{
functionB() {
console.log('hello world B')
}
}
我有另一个函数需要将ClassA 或ClassB 的实例作为参数,如下所示。
function sayHello(object) {
// ...
}
如何根据正在使用的类的实例键入object 以访问函数functionA 或functionB?下面的代码不起作用:
function sayHello(object: IClassA | IClassB)
我不想使用通用的any 类型。谢谢。
【问题讨论】: