0
我有一個邊欄菜單組件,其中包含一個用於保存菜單中項目的服務。然後多個來源可以根據他們認爲合適的方式改變菜單。在Typescript中定義對象回調的最佳方法?
目前每個項目實現SidebarItem:
export interface SidebarItem {
name: string,
link: Route|string,
icon ?: string
}
但是我能趕上某些事件(點擊,懸停),並希望有一個選項來定義側邊欄上的項目本身的回調。
我想知道完成此操作的最佳方法。我應該在界面上定義兩個屬性,讓每個人決定他們如何實現它,或者有什麼選擇嗎?我不認爲側邊欄項目可以是類,因爲我不想爲每個側邊欄項目添加一個新類。
如果有幫助,我也可以使用aurelia事件聚合器發送事件。
PS:如果這感覺很主觀,只需將標題改爲「How to」即可。我提出的方法是瘋狂的猜測,我不認爲這是正確的。
目前還不清楚你在問什麼。你在問如何在這個接口中包含對回調函數的引用嗎? –
有一件事可能是提供不需要實現的約定方法(=>不要將它們放在界面中),但是如果您需要該功能,則必須實現它們。與Aurelia組件生命週期方法相比(附加,綁定等)。他們不是必需的,但是如果你想在組件被連接之前做一些事情,你必須實現這個方法。 –
@NitzanTomer對不起,如果這不清楚。我們以Angular 2組件爲例。你可以創建一個組件類,但是當組件被銷燬時你可能需要做些什麼。 Angular 2的方法是,在組件上實現_OnDestroy_接口,然後在該類上實現一個ngOnDestroy()方法。 我的問題是類似的。例如,當用戶點擊菜單中的「取消帳戶」按鈕時,我想顯示可確認的對話框。 1/2 – marekpw