>웹 프론트엔드 >JS 튜토리얼 >AngularJS 라우팅에서 성가신 해시뱅(#)을 어떻게 제거할 수 있나요?

AngularJS 라우팅에서 성가신 해시뱅(#)을 어떻게 제거할 수 있나요?

Susan Sarandon
Susan Sarandon원래의
2024-12-01 20:11:12365검색

How Can I Remove the Annoying Hashbang (#) from AngularJS Routing?

성가신 해시뱅(#) 없이 AngularJS 라우팅

AngularJS에서 라우팅을 사용하면 애플리케이션에 대해 다양한 상태와 보기를 정의할 수 있습니다. $routeProvider를 사용하여 라우팅 규칙을 선언할 때 브라우저의 URL에 해시 기호(#)가 포함되어 있음을 알 수 있습니다. 예를 들어, '테스트' 페이지로 이동하는 것은 "app/test" 대신 "app/#/test"처럼 보일 수 있습니다.

왜 해시가 필요한가요?

AngularJS는 HTML5가 아닌 브라우저에 해시 기호를 사용하여 서버에 대한 HTTP 호출을 방지합니다. 해시가 없으면 이전 브라우저는 지정된 href에서 서버에 요청을 보내게 되는데, 이는 클라이언트 측 탐색에 바람직하지 않습니다.

해시뱅 방지

hashbang에서는 $locationProvider.html5Mode(true) 메소드를 사용하여 가능한 경우 HTML5 기록 API를 사용하도록 AngularJS에 지시할 수 있습니다. 이 API는 더 나은 URL 처리를 제공하고 해시 없이 더 깔끔한 URL을 사용할 수 있게 해줍니다.

지원되는 브라우저

HTML5 기록 API는 대부분의 최신 브라우저에서 지원됩니다. 지원되는 브라우저 목록은 다음과 같습니다.

  • Google Chrome
  • Mozilla Firefox
  • Safari
  • Microsoft Edge
  • Internet Explorer 10

AngularJS 애플리케이션에서 HTML5 모드를 활성화하려면 구성에 다음 코드를 추가하기만 하면 됩니다.

app.config(function($locationProvider) {
  $locationProvider.html5Mode(true);
});

한 번 HTML5 모드를 활성화하면 해시뱅이 URL에서 제거되어 보다 사용자 친화적이고 사용자에게 미학적으로 즐거운 경험을 제공합니다.

위 내용은 AngularJS 라우팅에서 성가신 해시뱅(#)을 어떻게 제거할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.