IE9의 문제를 해결하기 위해 하지만 메신저가 IE9에서 페이지에 액세스하려고 할 때 전혀 액세스 할 수 없습니다. 읽은 솜씨를 읽은 후 나는 IE9가 url에서 # 뒤에 나오는 모든 것을 무시하고 사용자를 호스트 url (url의 # 앞에있는 모든 것)로 리디렉션한다는 것을 알게되었습니다. 그리고 html5mode의 표준 fallback은 hashbang-mode입니다. Angular docs for $location대체 내가이 설정 AngularJS와의 검색 응용 프로그램을 만드는거야
내 질문에 누군가가이 문제가있는 경우 또는 URL에 hashbangs의 사용 주위에 어떤 방법이 있는지 알고 있습니다. 더 많은 문서가 필요할 경우 알려 주시면 제공해 드리겠습니다!
편집 :
$scope.$on('$locationChangeSuccess', function() {;
$scope.searchQuery = $location.search()['q'];
$scope.search();
});
편집 : "!" 에만 추가되므로 $locationProvider.hashPrefix('!');
가 작동하지 않습니다 추가하기이 컨트롤러 내부 url의 "#"다음에.
참조 이미지 :
"경로 변경이 완료된 후 routeParams 만 업데이트됩니다, 사용 사례 확신 메신저 :
$location
서비스에 대한 대안은 참조$routeParams
을 주입하는 것입니다 IE9는 URL의 # 뒤에 나오는 모든 것을 무시하고 사용자를 호스트 URL로 리디렉션합니다. " URL에서 해시가 작동하는 방식은 무엇입니까? Angular는이를 가져 와서 내부적으로 사용할 수있는 URL로 파싱합니다. –그래서 문제가 무엇입니까? IE9에서 액세스 할 수없는 이유는 무엇입니까? 문제 해결을 수행 했습니까? 문서에서 볼 수 있듯이 폴백은 정확합니다. – falsarella