我希望 myValue
的类型为 interface A
或 interface B
interface interfaceA {
commonProp: any;
specificToA: any;
}
interface interfaceB {
commonProp: any;
specificToB: any;
}
let myValue: interfaceA | interfaceB;
myValue.interfaceA // doesn't work, I only have access to commonProp
如何让 myValue
访问 specificToA
和 specificToB
?
最佳答案
您可能想使用 type guards .
function isA(arg: any): arg is interfaceA
{
return 'specificToA' in arg;
}
if (isA(myValue))
{// Here typescript will know you are dealing with interfaceA
let v = myValue.specificToA;
}
关于typescript - 创建具有接口(interface) A 和接口(interface) B 的所有属性的类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44156844/