2012-02-24 5 views
8

백본 라우터가 특정 라우팅 기능을 호출하기 전에 어떻게 알림을받을 수 있습니까?Backbone.js에서 경로를 변경하기 전에 기능 실행

모든 페이지를 렌더링하기 전에 일반적인 "재설정"기능을 사용하고 싶습니다.

바인딩 할 수있는 이벤트가 있습니까?

업데이트 : 발견 된 솔루션은 이벤트를 트리거하기 위해 라우터 또는 기록을 확장하는 것을 기반으로합니다.

+0

나는이 대답이 문제에 대한 해결책이 있습니다 http://stackoverflow.com/a/16298966/2330244이 –

답변

9

당신이 Router.execute 방법으로 원하는 것을 가지고 내가 생성자이 사용하고 '

MyRouter = Backbone.Router.extend({ 
    routes: {}, 

    // fired before every route. 
    execute: function(callback, args) { 
    // ... 
    } 
}); 
0

하고 그것을 잘

이 일하고있다. bind ("all", this.ACL); 함수가 모든 경로 변경 전에 호출되지만 제대로 일치하는 다른 경로를 실행하는 콜백의 인수를 통과해야합니다 존재하는 실행하면

여기 ACL 함수

2

입니다.

MyRouter = Backbone.Router.extend({ 
     routes: {}, 

     // fired before every route. 
     execute: function(callback, args, name) { 
     //your logic 
     if (callback) callback.apply(this, args); //this must be called to pass to next route 
     }, 
    }); 
+0

에 솔루션에 대한 몇 가지 의견을 추가하십시오 왜이 문제를 해결하는 방법을 –

관련 문제