1

backback.navigate呼び出しの後に(フラッシュメッセージをレンダリングするための)関数を実行したい。出来ますか?現在、allイベントにフックして、eventnameが「route:」で始まるかどうかを確認しています。しかし、メッセージが追加される前に、トリガーが早すぎます...ルートが完了した後に実行することを考えていました

# intercept all router navigate and render flash messages if any
renderFlashMessengesOnNavigate = (evt) =>
  if evt.indexOf("route:") is 0 
    console.log "rendering messages after route ..."
    @flashMessenger.render()
window.appRouter.bind "all", renderFlashMessengesOnNavigate
window.authRouter.bind "all", renderFlashMessengesOnNavigate
window.userRouter.bind "all", renderFlashMessengesOnNavigate
4

1 に答える 1

7

これを試して:

var originalNavigate = Backbone.history.navigate;
Backbone.history.navigate = function(fragment, options){
    originalNavigate.apply(this, arguments);

    //your code here
}
于 2012-06-27T04:45:24.507 に答える