zoukankan      html  css  js  c++  java
  • 大型vue单页面项目优化总结

    这是之前在公司oa项目优化时罗列的优化点,基本都已经完成,当时花了点心思整理的,保存在这里,方便以后其他项目用到查漏补缺。

    1、打包文件中的app.js文件放入cdn,加快页面首次加载速度 
    2、提取公共方法,减少js代码量 
    3、提取公共组件,将统计分析的售前和售后,客户分配,客户管理,客服管理等页面的搜索条件模块化,减少了html代码量,减少了每个页面中都有的重复方法。
    4、vue-router路由全部改成懒加载路由,该页面被点开时才加载该页面.vue组件,提高首页加载速度。 
    5、根据页面复杂度,删除部分页面生命周期created中的window.setTimeout方法 
    6、将所以v-show替换成v-if,v-if如果不为真就不会加载这段代码,而v-show还是会加载这些代码,这样加快了页面加载速度。
    7、检查所有页面,删除页面中没有用到的css和data数据以及js方法,减少文件体积。
    8、使用webpack插件,将常用不需要重复打包的依赖打包出来,在index.html直接引用,减小最后上线打包出来vendor文件体积,加快首屏加载速度和打包速度。(实验成功,但是没有在打包版本实施)
    9、对复杂页面的弹窗使用lazyRender懒渲染组件,优化该页面的打开速度。
    10、webpack build打包时去除debugger和console语句,具体修改在webpack.prod.conf.js UglifyJsPlugin插件的compress里。
    11、对每个页面vuex进行优化,提到全局方法,减少大量重复代码 
    12、对页面自适应样式进行优化, 用全局css代替原来的js;减少了每个页面css代码
    13、对表格进行优化,提取出列名等写出数组,减少表格html体积 0.2
    14、引入顶部进度条插件,提高页面加载体验
    15、研究首页优化方法,加快单页面首页加载体验 

    16、引用路径优化 webpack.base.conf.js resolve.alias
    17、webpack 解析模块时应该搜索的目录优化 webpack.base.conf.js resolve.modules
    18、使用webpack进行代码分离,每个页面打包成一个单独js,减少文件体积,加快加载速度 
    19、把常用的依赖使用外部cdn引入,不再打包,分担服务器压力,加快页面加载速度。
    20、使用webpack代码分析工具,方便针对性优化依赖和代码块。
    21、同一个组件比如多个编辑页面切换时,本来的方案是使用watch.$route进行处理,经参考也可以在路由上加唯一key,保证切换路由重新渲染。参考http://www.jianshu.com/p/c315c9211146中的router-view
    22、合理使用vuex,频繁切换的页面组件比如多个编辑页面,保存多个数据store,减少http请求。
    23、加快webpack性能,参考地址https://jeffjade.com/2017/08/12/125-webpack-package-optimization-for-speed/中设置 test & include & exclude
    24、生产环境采用webpack-parallel-uglify-plugin替换UglifyJsPlugin,提高webpack性能,参考地址https://jeffjade.com/2017/08/12/125-webpack-package-optimization-for-speed/中的增强代码代码压缩工具
    25、src/api/config.js和package.json文件,实现自动分环境运行。 

  • 相关阅读:
    Unable to lock the administration directory (/var/lib/dpkg/)解决办法
    Linux实训——搭建动态网站
    Linux实训——搭建HTTP服务器
    小程序学习视频教程
    数组的所有方法
    小程序组件封装步骤
    微信小程序生成图片学习
    小程序组件封装学习地址
    开发者在 onPageNotFound 回调中进行重定向处理onPageNotFound(Object)
    小程序中view的自定义属性获取
  • 原文地址:https://www.cnblogs.com/wuyuchao/p/8483919.html
Copyright © 2011-2022 走看看