1

저는 방금 crossroads.jshasher.js으로 시작했으며 대부분의 경로를 파싱에 성공했습니다. 내가 이해하지 못하는 것은 페이지의 루트로 돌아가는 방법입니다. 나는 그 권리를 말하는 게 아니에요 알고 있지만, 여기에 내 문제입니다 :crossroads.js 및 hasher.js를 사용하여 루트 페이지로 돌아 가기

  1. 내가 http://example.com로 이동 내가 볼 필요가 무엇을 참조하십시오.

  2. 해시를 http://example.com/#/foo으로 변경하고 DOM을 변경하기 위해 필요한 작업을 수행합니다.

  3. 브라우저에서 다시 클릭 해 봅니다. 여기 서둘러야합니다.

어쩌면 교차로에서 "루트"경로를 정의해야합니까? 나는 역사에 잘못된 것을하고 있는가?

답변

1

두 설정 (하셔 + 교차로)이 중간에 있다는 것을 알고 있습니다.

교차 경로에 "root"패턴이있는 경로를 추가하면 루트 패턴이 일치하는 경우이 경로에 대한 처리기가 정의됩니다. 그리고 핸들러는 루트 페이지 내용을 표시합니다.

두 번째 문제는 잘 구성되어야하는 와셔입니다. hasher doc에서 hasher.setHash()와 hasher.replaceHash()의 차이점을 확인하십시오. 기록을 유지하고 브라우저 뒷면 기능을 사용하려면 setHash를 사용하십시오.

전체 프로세스는 다음과 같습니다

  1. hasher.setHash (new_hash_value)로 변경 URL, 수동
  2. 심부름 군이 해시가 변경되었습니다 인식하고 트리거 탐색 표시 줄에 URL을 입력하거나 브라우저에서 버튼을 다시 사용 추가 처리를위한 새로운 URL 교차로
  3. 교차로
(이 루트 해시 패턴과 루트를 필요 ) 새로운 해시 호출 표시 루트 페이지를 파싱

crossroads.addRoute("", function() { 
    // call displaying root page 
    }); 
: 수 호출 디스플레이 루트 내용으로

function parseHash(newHash, oldHash){ 
    crossroads.parse(newHash); 
} 

hasher.initialized.add(initialParse); //parse initial hash 
hasher.changed.add(parseHash); //parse hash changes 
hasher.init(); //start listening for hash changes 

을 물론 루트 페이지에 대한 경로를 정의

수들을 변경 될 심부름 군을 준비

관련 문제