2015-12-10 17 views
2

如何確保通用類型T實現某個屬性?Typescript:確保通用類型具有某個屬性

export class Helicopter<T> implements IFlyable<T> { 

    constructor(private _value : T) { 
     //something 
    } 

    get listOfEngines(): string[] { 
     return _value.listOfEngines; 
    } 
} 

目前的編譯器抱怨類型T沒有財產listOfEngines

回答

2

創建一個接口並添加extends限制類型參數T

export interface IHelicopterStructure { 
    listOfEngines:string[]; 
} 

export class Helicopter<T extends IHelicopterStructure> extends Structure implements IFlyable<T> { 
    ... 
} 
相關問題