vue 라우팅에서 "#" 또는 "#!"이 무엇을 의미하는지 이해가 안 됩니다
내 데모의 라우팅에는 "#"이 있습니다. http://localhost:8080/#/home/article
http://localhost:8080/#/home/article
看到网上的vue路由有“#!” https://mrjeff578575.github.io/Vue-demo/#!/home/article
인터넷에 대한 vue 경로에는 "#!"이 있습니다. https://mrjeff578575.github.io/Vue-demo/#!/home/article
포털 https://router.vuejs.org/zh-c...
이제 프런트 엔드 라우팅에는 3가지 모드가 있습니다
hash: 라우팅에 URL 해시 값을 사용합니다. HTML5 History API를 지원하지 않는 브라우저를 포함한 모든 브라우저를 지원합니다.
history: HTML5 History API 및 서버 구성에 의존합니다. HTML5 기록 모드를 확인해 보세요.
abstract: Node.js 서버 측과 같은 모든 JavaScript 런타임 환경을 지원합니다. 브라우저 API가 발견되지 않으면 라우터는 자동으로 이 모드로 강제 전환됩니다.
일반적으로 사용되는 것은 1(주소에 #번호가 있음)과 2(실제 요청 주소와 다르지 않음)입니다
또한,
#
은 vue-router에서 사용하는 해시 기호입니다
에서 사용하는 해시 기호입니다.#!
는angularjs Route상관없습니다. #만 입력하세요(브라우저가 페이지로 이동하지 않음)
해당 페이지에 vue-router v0.7.13을 사용하고 계시네요. 소스 코드에도 #! 기호가 있습니다.
Vue 라우팅 모드
이것을 라우팅 해시 전략이라고 합니다. '#'은 해시 기호라고 하며, 특정 검색은 서버에서 수행되지 않습니다.
#!은 해시뱅으로, #과 정확히 같은 의미입니다. 차이점은 의미론뿐입니다.
#是hash模式
히스토리 모드에는 # 기호가 없지만
서버에 배포된 경우
해시 모드는 새로 고침 404 문제를 일으키지 않습니다. .
기록 모드에서 페이지를 새로 고치거나 직접 연결하면 404가 표시됩니다. . .
기존 방식에서는 백엔드 프로그램이 실제로 파일을 생성하고 연결 요청을 통해 실제로 파일을 찾을 수 있습니다. .
이 단일 페이지에는 HTML이 하나만 있으며 백엔드 프로그램은 파일을 자동으로 생성하지 않습니다. .
그래서 히스토리 모드를 사용한다면 서버에 배포할 때 가상 경로를 구성해야 합니다
리소스를 요청할 수 없으면 index.html 파일을 가리킵니다