1

여러보기, 모음 등으로 백본 응용 프로그램을 개발 중입니다. 또한 영구 URL을 잘 처리하는 라우터가 있습니다.Backbone.History referer (역사 길이)를 감지하는 방법

내가 얻으려고하는 것은 사용자가 window.history(-1)을 사용할 수있을 때 이전보기로 되돌아 갈 수있는 "뒤로"버튼을 만드는 것입니다 (사용자가 이전에보기에서 왔음). 그리고 그렇지 않다면, "뒤로"버튼은 홈 페이지로 이어질 것입니다.

기본적으로 Backbone이 한 단계를 롤백하는 데 사용할 수있는 기록에 내역을 저장했는지 확인해야합니다. 기록이 비어있는 경우 (우리는이 URL로 직접 이동했습니다) 백 라우터를 가리 킵니다.

이미 window.hisory.length을 사용해 보았지만 결코 비어 있지 않습니다. 여전히 브라우저 또는 브라우저의 빈 시작 페이지의 시작 홈페이지를 가리킬 수 있습니다.

Backbone.History는 통과하는 URL (해시)을 추적합니까? 만약 그렇다면 어떻게 접근해야합니까? 나는 이미 Backbone.History를 로깅하는 콘솔을 시도했으나 내가 할 수있는 것을 찾지 못했습니다.

도움/조언을 보내 주시면 감사하겠습니다.

답변

0

당신은 다음을 수행 할 수

라우터 초기화 기능 - 그럼

this.on("all", this.storeRoute); 
this.history = []; 

(또는 라우터)를 storeRoute 기능 - 또한 라우터

storeRoute: function() { 
    return this.history.push(Backbone.history.fragment); 
} 

더 -

previous: function(){ 
    if (this.history.length > 1) { 
     return this.navigate(this.history[this.history.length - 2], true); 
    } 
} 

그러면 언제든지 yourApp.router.previous()으로 전화하면됩니다!