나는 handlebarsJS로 구동되는 SPA에 crossroadsJS와 hasherJS를 사용하고 있습니다. 돌이켜 보면 Ember에 모든 것을 내장해야했지만 아마 늦게 시작하는 것이 현명하지 않습니다.리프레쉬 hasherJS/crossroadsJS routes
나는 해시 라우트를 설정하여 클릭 한 내용에 따라 내 핸들 바 템플릿을 안팎으로 전환합니다. 나는 아무 문제없이 노선 사이에서 앞뒤로 움직일 수있다. 그러나 페이지를 새로 고치면 항상 내 #/home보기로 되돌아갑니다. 나는 창문에 대한 연구를 해왔다. 변화와 창. 언제 까지나. 그러나 이것들 중 어느 것도 문제를 해결하지 못하는 것 같다.
필자는 내 견해를 어떻게 처리하는지 매우 구체적인 방법을 가지고 있습니다. 나는 글로벌 뷰 객체과 같이 구성했다 : 나는 단순히 내가 통해 읽은 $(document).ready()
또는 $(window).onhashchange
에 해시 변화의 모든 유형 JQuery와 리스너를 추가 할 수 없기 때문에
views.procedures = function (template) {
this.initialize = function() {
this.el = $('<div/>');
this.el.attr('id', 'procedures');
this.el.on('click', '.returned-list li a', this.toResults); // list of API objects by name
};
this.render = function() {
var parts = {
title: 'Procedures View',
};
this.el.html(template(parts));
return this;
};
this.toResults = function() {
cache.justClicked = $(this).attr('data-id');
crossroads.addRoute('procedures/{name}', function() {
api.endpoints.procedure(cache.justClicked); // constructed elsewhere
});
};
this.initialize();
};
내가 이것을 언급 hasherJS와 crossroadsJS 문서를 여러 번 반복하지만 새로 고침 문제를 해결하기 위해 어떤 것도 생각할 수 없습니다. 모든 도움을 미리 감사드립니다.