![](/img/trans.png)
[英]URL address changing from localhost:3000/home to localhost:3000/home#_=_
[英]can anyone explain why (http://localhost:3000/#/home) # occurs inbetween the url
我是angular js和node js的新手,我有些懷疑,誰能解釋為什么#出現在url(localhost:3000 /#/ home)之間
URL段中的#
表示用於自動跳轉到長頁面中該部分的標簽ID。 如今,它已被java-script框架(例如angular)用於虛擬導航目的,即,在#
之后更改部分不會導致瀏覽器重新加載整個頁面,並在內部使用哪個div
元素顯示/隱藏在SPA(單頁應用程序)。
當您在AngularJS中瀏覽單頁應用程序時,這是較舊的瀏覽器不完全重新加載頁面的一種方法。
它稱為Hashbang,您可以在文檔中閱讀有關它的更多信息:
https://docs.angularjs.org/guide/$location#hashbang-and-html5-modes
這些稱為Hashbang URL。 通常,我們在哈希號之后的所有內容都不是另一個URL,但它仍屬於同一HTML頁面。 隨着JS庫的增加和Web瀏覽器功能的增加,現在我們可以使用HTML5歷史API替換URL。
該hashbang技術用作舊版瀏覽器的后備,即,整個應用程序在單個HTML頁面上運行,並且Angular監視URL中的任何#哈希更改並觸發適當的路由控制器。
我建議您閱讀有關hashbang URL的更多信息: 做Twitter,Hash-Bang等鏈接! 網址
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.