1.修改vender文件大小

1.vender文件过大;

build文件下webpack.base.conf文件夹下modules.exports={externals:{'vue':'Vue','vue-router':'VueRouter',//必须为VueRouter 否则undefined'vuex':'Vuex','js-md5':'md5','echarts':'echarts','vant':'vant','axios':'axios'},//设置方式:https://www.tangshuang.net/3343.html
}

index.html文件引入cdk

<script src="//cdn.bootcss.com/vue/2.5.2/vue.min.js"></script>
<script src="//cdn.bootcss.com/vue-router/3.0.7/vue-router.min.js"></script>
<script src="//cdn.bootcss.com/vuex/3.1.2/vuex.min.js"></script>
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
<script crossorigin="anonymous" integrity="sha384-dvRcIlIMcjGZ3zWdA8tp/2oMLeiAKMOSLt3kZZymNo5KRK80qLQo2F+YujiP25+9" src="https://lib.baomitu.com/echarts/4.6.0/echarts.js"></script>
<linkrel="stylesheet"href="https://cdn.jsdelivr.net/npm/vant@2.6/lib/index.css"
/>
<script src="https://cdn.jsdelivr.net/npm/vant@2.6/lib/vant.min.js"></script>
<script src="http://cdn.bootcss.com/blueimp-md5/1.1.0/js/md5.js"></script>

main.js不做修改,build时会自动忽略extrinals内的依赖;

2.路由设置为懒加载

component: resolve => require(['@/pages/Login'], resolve)

3.取消生成map文件 config=>index.js

productionSourceMap: false,

4.设置超过50k的图片不使用base:64

webpack.base.conf文件{test: /\.(png|jpe?g|gif|svg)(\?.*)?$/,loader: 'url-loader',options: {limit: 50,name: utils.assetsPath('img/[name].[hash:7].[ext]')}},

ios由于通过cdn引用依赖包;页面无法加载;考虑第二种方式:

2. vue预加载

  1. 下载插件 npm install prerender-spa-plugin --save-dev

  2. build 下 webpack.pro.conf文件夹

//webpack.pro.conf.js
plugins: [// --添加--new PrerenderSPAPlugin({staticDir:config.build.assetsRoot,// outputDir:path.join(config.build.assetsRoot,'base')routes:['/','/login','/homepage'],//路由改为historyrenderer:new Renderer({inject:{foo:'bar'},headless:false,renderAfterDocumentEvent:'render-event'//dispatch时间,要与main.js文件名统一})}),
]//router.js
export default new Router({mode:'history',//改为historyroutes: [{}]
})//main.jsnew Vue({el: '#app',router,store,components: {App},template: '<App/>',mounted(){document.dispatchEvent(new Event('render-event'))}
})

如不够详细请查看:https://tech.meituan.com/2018/11/15/first-contentful-paint-practice.html

如果还未解决问题可考虑将单页面打包为多页面,本人未试

单页面改造为多页面参考:https://www.cnblogs.com/webhmy/p/10009364.html

vue按需加载:https://www.cnblogs.com/xujianwu/p/11429737.html

谢谢提意见及点赞。哈哈哈
有问题加qq:1215323732

vue-cli首页加载速度慢优化vender+vue预加载相关推荐

  1. 小程序性能优化之页面预加载方案——让你的小程序运行如飞 进阶篇

    小程序性能优化之页面预加载方案 进阶篇 转载请注明出处:https://blog.csdn.net/sinat_27612147/article/details/80798452 写在前面 预加载方案 ...

  2. 小程序性能优化之页面预加载方案——让你的小程序运行如飞 集成篇

    小程序性能优化之页面预加载方案 集成篇 转载请注明出处:https://blog.csdn.net/sinat_27612147/article/details/80802725 前言 之前看到一篇文 ...

  3. html页面预加载图片不出来,页面图片预加载与懒加载策略

    在图片的加载策略之前,我们先来了解下html网页中,图片的不同位置的图片分别是在什么时候发起图片资源请求的 img 标签 img标签会在html渲染解析到的时候,如果解析到img src值,则浏览器会 ...

  4. [Vue-cli3] is a Vue CLI 3 only command and you are using Vue CLI 2.9.6. You may...

    项目场景: Vue-cli3执行生成脚手架,这个bug已解决; 问题描述: vue-cli3安装完成,执行初始化vue create xxx,提示: is a Vue CLI 3 only comma ...

  5. FragmentPagerAdapter加载fragment并使用setUserVisibleHint()处理预加载时遇到的坑,给textview赋值时出现的空指针异常...

    FragmentPagerAdapter加载fragment并使用setUserVisibleHint()处理预加载时,给textview赋值时出现的空指针异常 public class BaseFr ...

  6. vue create is a Vue CLI 3 only command and you are using Vue CLI 2.9.6. You may want to run the

    提示:vue create is a Vue CLI 3 only command and you are using Vue CLI 2.9.6. You may want to run the f ...

  7. vue create is a Vue CLI 3 only command and you are using Vue CLI 2.9.6. You

    之前自己安装的vue版本是2.9.6的但是最近项目需要,cli的命令vue create无法使用,报错 vue create is a Vue CLI 3 only command and you a ...

  8. vue create is a Vue CLI 3 only command and you are using Vue CLI 2.9.6. You may want to run the f

    vue create is a Vue CLI 3 only command and you are using Vue CLI 2.9.6.   You may want to run the fo ...

  9. HTML5 API详解(7):link prefetch提升加载速度,优化体验

    链接预取:浏览器会自动在后台把你需要加载的页面下载下来,当用户要点击进入该页面的时候,浏览器会从缓存把这个页面取出来,页面的加载速度就会加快. 标签属性:rel='next' 页面预加载很简单,只需要 ...

  10. 如何利用 webp 进行小程序图片加载速度的优化

    导语 最近很长一段时间没有更新博客,一方面是自己最近参与了小程序的开发,另一方面也是自己略有些怠惰,给自己记个过~那么现在既然回到学校那么还是要分享一些知识的. 前一阵子参与微信小程序开发时遇到了一个 ...

最新文章

  1. 水平反向拆分VSCode编辑器快捷键为Ctrl+\(正交拆分Ctrl+K Ctrl+\),如何快速将当前组编辑器窗口复制到另一侧?设置垂直向下拆分编辑器快捷键Alt+\
  2. java时间计算,获取某月第一天和最后一天
  3. 警告:隐式声明与内建函数‘exit‘不兼容解决方案
  4. PHP设置页面显示编码
  5. 使用cmd命令进行运行java(cmd命令输出Hello word)
  6. java基于微信小程序的学习打卡系统 uniapp 小程序
  7. 在OBS中解决无法录制chrome的问题
  8. 小米6不显示与电脑连接到服务器,小米6怎么连接不上电脑没反应怎么办
  9. Math 数学方法、随机数公式、随机数公式推理
  10. 二年级上册计算题_二年级数学脱式计算题600道
  11. 数组的扁平化方法总结
  12. 面试问离职原因,怎么说才好?
  13. 函数空间(巴纳赫空间、欧几里得空间、希尔伯特空间)
  14. phpstudy安装php8.0和php8.1的方法(内含VC运行库)
  15. 详解34家银行对公账号编码规则及其编码分析
  16. C++UML类图的关系
  17. 在EXCEL中VBA编程检验身份证号码有效性
  18. ios平台微信的语音文件AUD格式其实就是AMR格式
  19. RationalDMIS 7.1 如何更改CAD模型的坐标系
  20. SVM算法的生动讲解

热门文章

  1. xdoj-81-字符串查找
  2. JumpServer 堡垒机安装踩坑
  3. matlab图像嵌入提取压缩水印,matlab中如何对数字图像进行嵌入和提取水印
  4. 【学习笔记】使用OpenSSL生成CA证书-配置Nginx代理服务器使用HTTPS协议
  5. python如何打印26个字母_python3打印26个英文字母
  6. sql server 2008 r2 “远程过程调用失败“解决方案
  7. App、H5、PC应用多端开发框架Flutter 2发布
  8. Layui页面元素之导航
  9. C#:DataTable 操作
  10. excel常用快捷键详解