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

vue項(xiàng)目開(kāi)啟gzip壓縮功能簡(jiǎn)單實(shí)例

 更新時(shí)間:2023年07月24日 11:29:44   作者:阿吧阿巴阿巴  
這篇文章主要給大家介紹了關(guān)于vue項(xiàng)目開(kāi)啟gzip壓縮功能的相關(guān)資料,gizp壓縮是一種http請(qǐng)求優(yōu)化方式,通過(guò)減少文件體積來(lái)提高加載速度,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下

前言:為了優(yōu)化首屏加載速度,啟用gzip壓縮。

一、安裝compression-webpack-plugin

compression-webpack-plugin文檔

//新版本不太兼容,推薦這個(gè)版本
npm install compression-webpack-plugin@6.1.1 --save-dev

二、修改vue.config.js文件

// 1.先引入
const CompressionWebpackPlugin = require('compression-webpack-plugin');

// 2.在configureWebpack下面進(jìn)行配置(基本配置)
plugins: [
    new CompressionWebpackPlugin({
      // [file] 會(huì)被替換成原始資源。[path] 會(huì)被替換成原始資源的路徑,[query] 會(huì)被替換成查詢字符串
      filename: '[path][base].gz',
      // 壓縮成gzip
      algorithm: 'gzip',
      // 使用正則給匹配到的文件做壓縮,這里是給html、css、js以及字體做壓縮
      test: /\.js$|\.css$|\.html$|\.ttf$|\.eot$|\.woff$/, 
      // 只有大小大于該值的資源會(huì)被處理。單位是 bytes。默認(rèn)值是 0。
      threshold: 10240,
      // 只有壓縮率小于這個(gè)值的資源才會(huì)被處理。默認(rèn)值是 0.8。
      minRatio: 0.8
    })
  ]

// 3.然后 yarn build 進(jìn)行打包得到dist文件夾,就可以看到生成了很多gzip后綴的文件

三、在nodejs中使用

由于我是用nodejs搭建的服務(wù)器,因此只記錄用node使用的情況。

1.將dist文件放放在含有nodejs后臺(tái)的文件夾下

2.修改server.js文件

const path = require('path');
const fs = require('fs');
//導(dǎo)入express模塊
const express = require('express')
//創(chuàng)建express的服務(wù)器實(shí)例
const app = express()

app.use((request, response, next) => {
	//由于我是把server.js和dist文件夾放在同一路徑下,因此需要拼接
    const fullPath = path.join(__dirname,'dist',`${request.originalUrl}.gz`);     
    // 檢測(cè)是否存在同名.gz壓縮文件
    if (fs.existsSync(fullPath)) {
        // 存在就告訴瀏覽器用gzip編碼格式來(lái)解析,并把對(duì)應(yīng)的“.gz”格式文件發(fā)送給瀏覽器。
        response.setHeader('Content-Encoding', 'gzip')  
        response.sendFile(fullPath);
    } else {
        next()
    }
   })

//將dist目錄托管為靜態(tài)資源服務(wù)器
app.use(express.static('./dist'))

//調(diào)用app.listen方法,指定端口號(hào)并啟動(dòng)web服務(wù)器
app.listen(3140,function(){
    console.log('Express server running at http://127.0.0.1:3140');
})

3.over

可以看到,導(dǎo)致首屏加載過(guò)慢的罪魁禍?zhǔn)滓呀?jīng)壓縮成功啦

總結(jié) 

到此這篇關(guān)于vue項(xiàng)目開(kāi)啟gzip壓縮功能的文章就介紹到這了,更多相關(guān)vue開(kāi)啟gzip壓縮內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • vue中本地靜態(tài)圖片路徑寫法

    vue中本地靜態(tài)圖片路徑寫法

    這篇文章給大家介紹了vue中本地靜態(tài)圖片路徑寫法及Vue.js中引用圖片路徑的方式,需要的朋友參考下吧
    2018-03-03
  • vue服務(wù)端渲染添加緩存的方法

    vue服務(wù)端渲染添加緩存的方法

    vue服務(wù)區(qū)緩存分為頁(yè)面緩存、組建緩存和接口緩存,本文通過(guò)實(shí)例代碼逐一給大家介紹,本文重點(diǎn)給大家介紹vue服務(wù)端渲染添加緩存的方法,感興趣的朋友跟隨小編一起看看吧
    2018-09-09
  • 簡(jiǎn)單了解Vue + ElementUI后臺(tái)管理模板

    簡(jiǎn)單了解Vue + ElementUI后臺(tái)管理模板

    這篇文章主要介紹了簡(jiǎn)單了解Vue + ElementUI后臺(tái)管理模板,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-04-04
  • Vue開(kāi)發(fā)Sort組件代碼詳解

    Vue開(kāi)發(fā)Sort組件代碼詳解

    這篇文章主要介紹了Vue開(kāi)發(fā)Sort組件,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2021-10-10
  • vue嵌套路由與404重定向?qū)崿F(xiàn)方法分析

    vue嵌套路由與404重定向?qū)崿F(xiàn)方法分析

    這篇文章主要介紹了vue嵌套路由與404重定向?qū)崿F(xiàn)方法,結(jié)合實(shí)例形式分析了vue.js嵌套路由與404重定向的概念、原理、實(shí)現(xiàn)步驟與相關(guān)操作技巧,需要的朋友可以參考下
    2018-05-05
  • vue如何使用watch監(jiān)聽(tīng)指定數(shù)據(jù)的變化

    vue如何使用watch監(jiān)聽(tīng)指定數(shù)據(jù)的變化

    這篇文章主要介紹了vue如何使用watch監(jiān)聽(tīng)指定數(shù)據(jù)的變化,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • Vue3實(shí)現(xiàn)跨標(biāo)簽頁(yè)通信的四種方式

    Vue3實(shí)現(xiàn)跨標(biāo)簽頁(yè)通信的四種方式

    在Vue應(yīng)用中,跨標(biāo)簽頁(yè)的通信通常涉及到兩個(gè)或多個(gè)瀏覽器標(biāo)簽頁(yè)之間的信息共享,由于每個(gè)標(biāo)簽頁(yè)或窗口都是獨(dú)立的JavaScript執(zhí)行環(huán)境,它們不能直接通過(guò)Vue或其他JavaScript庫(kù)來(lái)直接相互通信,但是,有一些方法可以實(shí)現(xiàn)這種跨標(biāo)簽頁(yè)的通信,以下是一些常用的跨標(biāo)簽頁(yè)通信方法
    2025-03-03
  • Vue路由切換和Axios接口取消重復(fù)請(qǐng)求詳解

    Vue路由切換和Axios接口取消重復(fù)請(qǐng)求詳解

    在web項(xiàng)目開(kāi)發(fā)的過(guò)程中,經(jīng)常會(huì)遇到客服端重復(fù)發(fā)送請(qǐng)求的場(chǎng)景,下面這篇文章主要給大家介紹了關(guān)于Vue路由切換和Axios接口取消重復(fù)請(qǐng)求的相關(guān)資料,需要的朋友可以參考下
    2022-05-05
  • 解決vue 按鈕多次點(diǎn)擊重復(fù)提交數(shù)據(jù)問(wèn)題

    解決vue 按鈕多次點(diǎn)擊重復(fù)提交數(shù)據(jù)問(wèn)題

    這篇文章主要介紹了vue 按鈕多次點(diǎn)擊重復(fù)提交數(shù)據(jù)的問(wèn)題,本文通過(guò)實(shí)例結(jié)合的形式給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2018-05-05
  • vue + webpack如何繞過(guò)QQ音樂(lè)接口對(duì)host的驗(yàn)證詳解

    vue + webpack如何繞過(guò)QQ音樂(lè)接口對(duì)host的驗(yàn)證詳解

    這篇文章主要給大家介紹了關(guān)于利用vue + webpack如何繞過(guò)QQ音樂(lè)接口對(duì)host的驗(yàn)證的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2018-07-07

最新評(píng)論

绥阳县| 公主岭市| 施秉县| 上犹县| 大姚县| 乌鲁木齐县| 金山区| 如东县| 汪清县| 二连浩特市| 昌图县| 海城市| 伊春市| 台东县| 太谷县| 正镶白旗| 甘德县| 尼勒克县| 海城市| 习水县| 商水县| 衡水市| 东乡族自治县| 固始县| 哈尔滨市| 澎湖县| 太康县| 东城区| 祁阳县| 衡阳市| 芜湖县| 金沙县| 三河市| 平和县| 石阡县| 正定县| 如东县| 丰原市| 南京市| 三明市| 新化县|