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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 前端技术 > vue >内容正文

vue

vue 打包路由报错_Vue下路由History模式打包后页面空白的解决方法

發(fā)布時(shí)間:2023/12/9 vue 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 vue 打包路由报错_Vue下路由History模式打包后页面空白的解决方法 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

vue的路由在默認(rèn)的hash模式下,默認(rèn)打包一般不會(huì)有什么問題,不過hash模式由于url會(huì)帶有一個(gè)#,不美觀,而且在微信分享,授權(quán)登錄等都會(huì)有一些坑.所以history模式也會(huì)有一些應(yīng)用場(chǎng)景.新手往往會(huì)碰到history模式打包后頁(yè)面一片空白的情況,而且沒有資源加載錯(cuò)誤的報(bào)錯(cuò)信息.

這個(gè)其實(shí)仔細(xì)研究下會(huì)發(fā)現(xiàn),如果項(xiàng)目直接放的跟目錄, 那么是沒有問題的,如果是子目錄,那么就會(huì)一片空白了.這個(gè)vue官方有解釋,需要加一個(gè)base

// base: '/history',

// mode: 'history',

這個(gè)base即為項(xiàng)目路徑.

以上兩個(gè)都解決了,還是會(huì)發(fā)現(xiàn),此時(shí)只有首頁(yè)能訪問,通過首頁(yè)點(diǎn)進(jìn)去其他路由也是可以的,但是如果在其他路由刷新就有錯(cuò)誤了,這個(gè)懂history模式的也應(yīng)該知道,history模式是h5 api的 history.pushState,相對(duì)于是瀏覽器模擬了一條歷史,而真正服務(wù)器上沒有這個(gè)路徑資源,為什么hash模式不存在這個(gè)問題呢?hash模式是帶#,這個(gè)服務(wù)器不會(huì)解析,相對(duì)于還是返回html而已,index.html會(huì)根據(jù)vue路由去解析,而history模式則會(huì)請(qǐng)求服務(wù)器上的此地址,服務(wù)器上沒有相關(guān)路徑就會(huì)報(bào)錯(cuò)了,vue-router的官方文檔有介紹各種配置,比如ngnix的配置

location / {

try_files $uri $uri/ /index.html;

}

上面這個(gè)對(duì)于直接項(xiàng)目的根目錄是可以的,但是如果項(xiàng)目不是根目錄還是會(huì)有問題,

location /history {

root C:/web/static;

index index.html index.htm;

#error_page 404 /history/index.html;

if (!-e $request_filename) {

rewrite ^/(.*) /history/index.html last;

break;

}

}

上面這個(gè)是項(xiàng)目路徑名為history,這樣配置后就不會(huì)有vue打包后頁(yè)面空白問題了,history路由也可以自由訪問了,不過要記得上面說的,非根目錄的項(xiàng)目需要加上base 的路徑

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

總結(jié)

以上是生活随笔為你收集整理的vue 打包路由报错_Vue下路由History模式打包后页面空白的解决方法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。