日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > vue >内容正文

vue

Vue 路由router的两种模式

發布時間:2024/4/15 vue 49 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Vue 路由router的两种模式 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

兩種模式

vue中router可以設兩種模式:hash和history。設置方式就是代碼中注釋的部分。

import Vue from 'vue' import Router from 'vue-router' import HelloWorld from '@/components/HelloWorld'Vue.use(Router)export default new Router({// mode: 'history',routes: [{path: '/',name: 'HelloWorld',component: HelloWorld}] })

默認是hash模式。

  • 如果使用hash模式,url中就會存在“#“符號,這個符號后面的是路徑。

比如我們訪問http://localhost:8080/ ,會看到瀏覽器自動添加成http://localhost:8080/#/

如果我們要訪問"/test"路徑,則url為http://localhost:8080/#/test ,而http://localhost:8080/test 不可以

  • 如果使用history,則url沒有“#“符號,路徑與傳統網址一樣,如http://localhost:8080/和http://localhost:8080/test

但是這只是表面現象,這兩種模式本質的區別是什么?

history模式

先理解hash模式,就先要知道history模式,因為hash模式是解決問題出現,知道問題是什么就很容易理解hash模式。

history模式就是我們傳統的路徑,url中的路徑就是服務端根目錄下的相對路徑,是真實路徑。

比如http://localhost:8080/test/123.html ,則就需要在根目錄下有test文件夾,文件夾下有123.html這個文件。

但是如果我們沒有這個文件,而是用vue這種router的方式呢?

那么就必須用nginx代理,否則找不到這個文件就是返回404。

這樣就需要在nginx中配置每一個route,漏下一個就會404

所以history模式下的路由分發是服務端(nginx)來做的

hash模式

為了解決上面的問題,hash模式出現了。在hash模式的url中“#“符號后面的路徑并不是真實路徑,而是以類似參數的形式傳給默認文件。

默認文件就是index,在這里通過“#“符號后面的路徑去匹配路由處理,所以只要有index這一個文件是真實路徑就可以。

這樣就不需要在nginx一個個配置了。

這樣hash模式下的路由分發就不需要服務端來做了,直接在前端就處理了。

總結

以上是生活随笔為你收集整理的Vue 路由router的两种模式的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。