2013-01-08 274 views
1

我正在使用TypeScript編寫程序。問題是我執行HTMLElement的界面。TypeScript接口實現

export class IEElement implements HTMLElement { 
    // something here 
} 

編譯器表明,我有一些屬性缺失(IEElement聲明瞭一個接口,但沒有實現它)許多錯誤。我已經實施了大約5個我需要的屬性。其餘的是多餘的。如何避免錯誤?我是否需要實現所有接口成員?

回答

2

是的,你需要實現所有非可選接口成員。

該接口是一個合同,如果您有一個實現該合同的類,您承諾將在該合同中實現所有內容。

的HTMLElement接口有很多實現 - 但如果你只想補充一點的行爲,或許你可以與現有的實現開始......

interface SpecialElement extends HTMLElement { 
    myCustomFunction:() => void; 
} 

var element = <SpecialElement>document.getElementById('example'); 

element.myCustomFunction = function() { }; 
+0

這是非常糟糕:/現在我有實施約70名成員......感謝您的答覆。祝你有美好的一天。 – Nickon

+0

@Nickon我剛剛爲你添加了一個可能的解決方案,可能會使它更容易 - 取決於你在做什麼! – Fenton

+1

謝謝,你讓我的一天;) – Nickon