美文网首页vuejs与angularjs
vue性能优化详解(二)

vue性能优化详解(二)

作者: LazyCat404 | 来源:发表于2019-08-26 14:20 被阅读0次

前端路漫漫,优化无极限。
本文主要从Webpack角度讲述vue性能优化。

1.Webpack 对图片进行压缩

如果静态图片资源过多,打包后文件过大,则会出现过度占用内存、带宽等问题。
主要利用image-webpack-loader插件

//安装插件
npm install image-webpack-loader --save-dev

安装好之后需要在webpack.base.conf.js中进行配置(略),但是对于cli3.x隐藏了webpack.base.conf.js文件,因此我们需要在vue.config.js下进行配置:

module.exports={
    //chainwebpack<=>configurewebpack
    chainWebpack: config => { 
        // 图片压缩
        config.module.rule('images')
        .test(/\.(png|jpe?g|gif|svg)(\?.*)?$/) //匹配文件名,也可以省略
        .use('image-webpack-loader')
        .loader('image-webpack-loader')
        .options({bypassOnDebug: true})
    },  
}

此外还可以对jscss甚至是json等静态资源利用compression-webpack-plugin插件进行压缩。
配置如下:

const CompressionPlugin = require("compression-webpack-plugin")
module.exports={
    publicPath: './',
    configureWebpack: config => {
        // 文件压缩
        if (process.env.NODE_ENV === 'production') {
            //为生产环境修改配置
            config.plugin('compressionPlugin')
            .use(new CompressionPlugin({
                test:/\.js$|\.html$|.\css/, // 匹配文件名
                threshold: 10240, // 对超过10k的数据压缩
                deleteOriginalAssets: false // 不删除源文件
            }))
        }else{
            // 为开发环境修改配置
        }
    },  
}

ps:这样做打包后的文件并不会减小多少甚至变大(因为未删除源文件,多了压缩包),具体使用可以去网上查找相关资料,也可以等等,后续应该会出相关的文。

2.减少 ES6 转为 ES5 的冗余代码

Babel插件会在每个输出文件中内嵌这些依赖的辅助函数代码,如果多个源代码文件都依赖这些辅助函数,那么这些辅助函数的代码将会出现很多次,造成代码冗余。为了不让这些辅助函数的代码重复出现,可以在依赖它们时通过require('babel-runtime/helpers/createClass')的方式导入,这样就能做到只让它们出现一次。

//安装插件
npm install babel-plugin-transform-runtime --save-dev

修改.balverc配置文件,cli3内修改babel.config.js文件

3.提取公共代码

如果项目中没有去将每个页面的第三方库和公共模块提取出来,则项目会存在以下问题:
-相同的资源被重复加载,浪费用户的流量和服务器的成本。
-每个页面需要加载的资源太大,导致网页首屏加载缓慢,影响用户体验。

相关文章

  • vue性能优化详解(二)

    前端路漫漫,优化无极限。本文主要从Webpack角度讲述vue性能优化。 1.Webpack 对图片进行压缩 如果...

  • MapReduce过程详解及其性能优化

    MapReduce过程详解及其性能优化 [toc] 转载:MapReduce过程详解及其性能优化 总结 详情 从J...

  • Android UI性能优化

    Ui性能优化 参考博客:Android UI性能优化实战 识别绘制中的性能问题Android UI性能优化详解 1...

  • 关于前端性能优化问题详解

    关于前端性能优化问题详解 出处:http://segmentfault.com/blogs 前端性能优化指南 AJ...

  • 【Unity项目实战】http网络插件和性能优化

    使用http网络请求:Untiy中常用通信(HTTP)插件BestHttp 性能优化:Unity性能的全面优化详解

  • vue性能优化详解(三)

    前端路漫漫,优化无极限。本文主要从Web 技术方向讲述vue性能优化。 1.开启 gzip 压缩 即GNUzip,...

  • vue 性能优化详解(一)

    前端路漫漫,优化无极限。本文主要从代码层面对vue项目性能优化进行总结, 1.v-if 和 v-show 区分场景...

  • apk瘦身

    Android性能优化之APK瘦身详解(瘦身73%) - 简书

  • vue 性能优化点

    vue项目中,经常会遇到一些性能优化点,以下就是我在工作中,总结的优化点 vue 性能优化点 1,路由懒加载 2,...

  • 数据库优化总结

    一、概述 二、优化方案详解 2.1、从数据库层面增强性能:优化SQL语句,合理使用字段索引,避免索引失效 SQL语...

网友评论

    本文标题:vue性能优化详解(二)

    本文链接:https://www.haomeiwen.com/subject/wwcrectx.html