で設定コントローラ属性は、私はいくつかのルート&私はmy.routeでエンバーtransitionToとコールバック
this.get('router').transitionTo("my.route").then(function (newRoute) {
newRoute.controller.set("controllerAttr1", controllerAttr1); // This code is called later
});
my.routeにcontrollerAttr1を設定したい、私はcontroller.controllerAttr1
のチェックを持ってtransitionToにエンバーコードを持っていますコールバックコードが実行される前にmodel: function (params) {
},
setupController: function setupController(controller, model) {
// Issue us below check is executed before the callback code which sets "controllerAttr1"
if (controller.controllerAttr1) {
//Do something
}
}
しかし、私の問題はcontroller.controllerAttr1ため、このチェックが起こるのである
newRoute.controller.set("controllerAttr1", controllerAttr1);
これを修正するにはどうすればよいですか?
コールバックの実行後にmodel/setupControllerフックを再実行するには – testndtv
ユースケースを説明できる場合は、それを改善する方法があります。再実行は良くありません。まだ完了しているすべての作業をやり直したい場合は、まだ完了しています。それでは、ルートに 'リフレッシュ 'があります。 – kumkanillam
シナリオは私が最初に説明したものです。ですから、my.route(model/setupControllerのコードを実行する)my.routeへの移行が発生し、my.routeのコントローラプロパティを設定するhook()コールバックが実行されます。しかし、ロジックがsetupControllerで早期に実行されたため、コードが正常に動作しない – testndtv