簡體   English   中英

灰燼:從組件到應用程序控制器的氣泡動作

[英]Ember: Bubble action from component to application controller

我在ember中有一個組件,它需要向應用程序控制器發送一個動作(帶有一個參數)。 無論在何處呈現此組件,都需要在應用程序控制器上調用完全相同的動作。

應用控制器

export default Ember.Controller.extend({
  actions: {
    addAlert: function(message) {
      this.set('message', message);
    },
    removeAlert: function(message) {
      this.set('message', message);
    }
  }
});

我該如何處理? 從開始到結束。

動作不會在控制器中冒泡,當觸發動作時,它將通過當前路徑的控制器,如果沒有任何處理,它將一直冒泡到當前路徑,一直到頂層路徑(應用程序)。

如果該操作必須在控制器上設置屬性,則可以直接從應用程序路由中設置它(盡管不建議這樣做)。

// routes/application.js
actions {
  addAlert(message) {
      this.controller.set('message', message);
    },
    removeAlert(message) {
      this.controller.set('message', message);
    }
}

有關更多信息,請閱讀有關動作冒泡的信息

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM