2017-03-25 25 views
2

我在組件按鈕如何從組件中調用路由的動作?

<button type="button" class="btn btn-sm btn-default" {{action "applyDateFilter"}}>GO</button> 

現在我已經在component.js寫這個動作applyDateFilter這樣

applyDateFilter() { 
      var variable = this.get('dateFilter'); 
      this.sendAction('testAction2'); 
     } 

現在我有主route.js另一個操作文件

testAction2: function(){ 
      alert('test'); 
     } 

現在我想從applyDateFilter動作調用此路由動作,所以我該如何做到這一點。我正在使用燼js版本2.10。 謝謝

回答

1

選項1.您需要在控制器中定義動作,並使用send方法在路由中調用動作。

testAction2(){ 
    this.send('testAction2Route'); 
} 

option 2.Install ember route action helper addon。你可以直接從像下面的組件使用路由的行動,而不是通常的動作助手

<button type="button" class="btn btn-sm btn-default" {{route-action "applyDateFilter"}}>GO</button>

請參閱本answer的經典動作和關閉動作和路由操作相關的東西

調用它,
相關問題