如何去除vue項目中的#及其ie9兼容性
一、如何去除vue項目中訪問地址的#
vue2中在路由配置中添加mode(vue-cli創(chuàng)建的項目在src/router/index.js)
export default new Router({
mode: 'history',
routes: [
{
path: '/',
name: 'menu',
component: menu,
children: [
{
path: 'organization',
component: organization,
children: [
{
path: '',
redirect: 'organizationSub'
},
{
path: 'organizationSub',
component: organizationSub
}
]
},
{
path: 'user',
component: user
},
{
path: 'role',
component: role
}
]
}
]
})
二、vue路由原理
2.1 hash模式:vue-router默認的路由模式。
vue開發(fā)的單頁面應用,html只有一個,切換時url的變化通過url的hash模式模擬完整的url。
2.2 history模式:vue2中配置 mode: 'history'。
利用history.pushState API完成url的跳轉
HTML5 History 模式官網(wǎng)介紹:https://router.vuejs.org/zh-cn/essentials/history-mode.html
三、注意事項
不過這種模式要玩好,還需要后臺配置支持。因為我們的應用是個單頁客戶端應用,如果后臺沒有正確的配置,當用戶在瀏覽器直接訪問 http://oursite.com/user/id 就會返回 404,這就不好看了。
所以呢,你要在服務端增加一個覆蓋所有情況的候選資源:如果 URL 匹配不到任何靜態(tài)資源,則應該返回同一個 index.html 頁面,這個頁面就是你 app 依賴的頁面。
vue-router官網(wǎng)中有介紹,也有后臺配置樣例:https://router.vuejs.org/zh-cn/essentials/history-mode.html
四、兼容性
經(jīng)過測試,mode: 'history'在ie9下不生效,若vue項目需要兼容ie9,且后臺對訪問地址有嚴格校驗,不建議使用此種模式。若是內(nèi)容有錯誤或遺漏,歡迎大家批評指正~
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
element select實現(xiàn)組件虛擬滾動優(yōu)化
本文主要介紹了element select實現(xiàn)組件虛擬滾動優(yōu)化,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2023-04-04
vue3+ts中ref與reactive指定類型實現(xiàn)示例
這篇文章主要為大家介紹了vue3+ts中ref及reactive如何指定類型的實現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-06-06
Vue使用axios進行get請求拼接參數(shù)的2種方式詳解
axios中post請求都是要求攜帶參數(shù)進行請求,這篇文章主要給大家介紹了關于Vue使用axios進行get請求拼接參數(shù)的2種方式,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下2023-01-01
Vue3?echarts組件化及使用hook進行resize方式
這篇文章主要介紹了Vue3?echarts組件化及使用hook進行resize方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-04-04

