0
我試圖讓我每次擊中某個控制器/路線時得到一個圖形重繪。還有其他頁面的輸入被改變,並且當'造型師'頁面被導航到時,圖形需要重新繪製。隨後在建模器頁面上進行的輸入更改會導致重繪,但每次導航到該圖形時,圖形最初都會被錯誤地縮放。因此,我需要在您到達'建模者'頁面的那一刻基於所有新輸入進行重繪。Ember.js 2觸發控制器的動作,當你打它的路線
export default Ember.Controller.extend({
calculator: Ember.inject.service(),
needs: ['modeller'],
init: function() {
this.drawCharts();
},
})
所以在init()的應用程序啓動時只被調用一次,但我需要的東西來稱呼它只要「建模」的路線被擊中。
我試着加入這個控制器,但無濟於事:
doSomething: function() {
console.log("currentPath");
return;
}.observes('currentPath'),
而且我試圖從路由器觸發它:
var Router = Ember.Router.extend({
location: config.locationType,
doSomething: function() {
console.log("didTransition in router");
this.get('controllers.modeller').init();
return;
}.on('didTransition'),
});
...幾乎工程 - 「路由器中的didTransition」已記錄,但我無法再引用控制器。它說「this.get(...)未定義」??
任何幫助表示讚賞。謝謝。