最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

淺談vue項目4rs vue-router上線后history模式遇到的坑

 更新時間:2018年09月27日 11:36:14   作者:二葉扁舟  
今天小編就為大家分享一篇淺談vue項目4rs vue-router上線后history模式遇到的坑,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

此次項目開發(fā)完后準(zhǔn)備打包,因為hash模式的路徑帶#看著實在是有點丑,所以采用history模式。因為本次項目屬于以前網(wǎng)站重構(gòu),但是seo問題,所以需要以前的一些地址路徑寫,所以vue-router的路徑全部重改了。打包后查了網(wǎng)上一大堆,都說要把config里的index.js 里的build里的

assetsPublicPath: '/'改成‘./',打包上線發(fā)現(xiàn)在hash模式下是沒問題的,

但一旦改成history模式,有些動態(tài)js文件的路徑都是錯的。無奈之下死馬當(dāng)活馬醫(yī),把‘./'改回了‘/'在history模式

下再次打包上線,發(fā)現(xiàn)點擊跳轉(zhuǎn)頁面都是正常的,有些小激動。但是history模式的通病就是不能刷新,

因為原來跳轉(zhuǎn)時其實不是通過請求服務(wù)器的,而是通過js操作history的API改變地址完成的。

當(dāng)你刷新了之后瀏覽器就耿直的去請求服務(wù)器了,然而服務(wù)器沒有這個路由,于是就404了。

解決方法1:可以做個代理,讓所有訪問服務(wù)器的地址都返回同一個入口文件。(推薦使用)

解決方法2:采用靜態(tài)文件的形式讓每個目錄都存在就不會報錯了

我們服務(wù)器是采用nginx,我不會,沒弄,就自己用了nodejs和express搭建了個簡單服務(wù)器,并采用了官方推薦的中間件

connect-history-api-fallback

使用方法:

在服務(wù)器app.js文件里引入

var history = require('connect-history-api-fallback');
然后在app綁定路由之前綁定中間件,
app.use(history({ 
rewrites: [ 
{ from: /^\/wap\/.*$/, to: '/index.html' }//這個是正確方式 
]}));

我一開始

app.use(history({
rewrites: [
{ from: /^\/wap\/.*$/, to: '/' }
]
}));

這樣的,發(fā)現(xiàn)刷新是正常的,但是路徑后面總是多了個"/",看著很是奇怪,就試著改成當(dāng)前下的html文件,發(fā)現(xiàn)真的可以。從此大功告成。

以上這篇淺談vue項目4rs vue-router上線后history模式遇到的坑就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論

邵阳县| 新蔡县| 漯河市| 庐江县| 西乡县| 科技| 慈溪市| 麻栗坡县| 绥滨县| 昌平区| 固安县| 疏勒县| 虹口区| 赤壁市| 晴隆县| 博爱县| 内江市| 佛冈县| 仪征市| 昌乐县| 沁水县| 阳原县| 上犹县| 紫云| 左权县| 浮山县| 保亭| 保亭| 高清| 张掖市| 包头市| 吉隆县| 应用必备| 兴安盟| 抚顺市| 马尔康县| 射洪县| 冀州市| 巴马| 东源县| 腾冲县|