[英]Typescript name collision/clash using multiple interface inheritance
如果在Typescript中我有兩個接口都具有相同名稱的成員,那么如何安全地實現這兩個接口? 這有可能嗎?
例:
interface IFace1 {
name: string;
}
interface IFace2 {
name: string;
}
class SomeClass extends IFace1, IFace2 {
// How to implement IFace1.name and IFace2.name ??
}
我知道在C#中可以解決此問題,並且可以在運行時使用C#的類型信息,但是Typescript呢?
TypeScript使用結構類型系統,因此IFace1
和IFace2
之間絕對沒有區別。 您可以這樣實現它們:
class SomeClass implements IFace1, IFace2 {
name = 'foo';
}
正如vcsjones所提到的,由於沒有運行時類型信息,因此沒有可行的方法可以名義上起作用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.