vue按需加载实例详解


Posted in Javascript onSeptember 06, 2019

vue-router配置路由,使用vue的异步组件技术,可以实现按需加载。这种方式下一个组件生成一个js文件

用例:

{
path: '/promisedemo',   name: 'PromiseDemo',   component: resolve => require(['../components/PromiseDemo'], resolve)
}

es提案的import() (推荐)

webpack官方文档:webpack中使用import()

vue官方文档:路由懒加载(使用import())

用例:

// 下面2行代码,没有指定webpackChunkName,每个组件打包成一个js文件。 const ImportFuncDemo1 = () => import('../components/ImportFuncDemo1') const ImportFuncDemo2 = () => import('../components/ImportFuncDemo2') // 下面2行代码,指定了相同的webpackChunkName,会合并打包成一个js文件。 // const ImportFuncDemo = () => import(/* webpackChunkName: 'ImportFuncDemo' */ '../components/ImportFuncDemo') // const ImportFuncDemo2 = () => import(/* webpackChunkName: 'ImportFuncDemo' */ '../components/ImportFuncDemo2') export default new Router({   routes: [     {       path: '/importfuncdemo1',       name: 'ImportFuncDemo1',       component: ImportFuncDemo1     },     {       path: '/importfuncdemo2',       name: 'ImportFuncDemo2',       component: ImportFuncDemo2     }   ] })

webpack提供的require.ensure()

vue-router配置路由,使用webpack的require.ensure技术,也可以实现按需加载。

这种情况下,多个路由指定相同的chunkName,会合并打包成一个js文件。

举例如下:

{   path: '/promisedemo',   name: 'PromiseDemo',   component: resolve => require.ensure([], () => resolve(require('../components/PromiseDemo')), 'demo') }, {   path: '/hello',   name: 'Hello',   // component: Hello   component: resolve => require.ensure([], () => resolve(require('../components/Hello')), 'demo') }

以上就是本次介绍的全部知识点内容,感谢大家的学习和对三水点靠木的支持。

Javascript 相关文章推荐
JavaScript 应用技巧集合[推荐]
Aug 30 Javascript
javascript学习笔记(八) js内置对象
Jun 19 Javascript
animate动画示例(泪奔的小孩)及stop和delay的使用
May 06 Javascript
js页面跳转的问题(跳转到父页面、最外层页面、本页面)
Aug 14 Javascript
浅谈javascript的Array.prototype.slice.call
Aug 31 Javascript
Bootstrap实现弹性搜索框
Jul 11 Javascript
用js写的一个路由(简单实例)
Sep 24 Javascript
jquery实现刷新随机变化样式特效(tag标签样式)
Feb 03 Javascript
使用3D引擎threeJS实现星空粒子移动效果
Sep 13 Javascript
vue中v-for加载本地静态图片方法
Mar 03 Javascript
vue发送ajax请求详解
Oct 09 Javascript
如何在Vue.JS中使用图标组件
Aug 04 Javascript
详解Nuxt.js中使用Element-UI填坑
Sep 06 #Javascript
nuxt踩坑之Vuex状态树的模块方式使用详解
Sep 06 #Javascript
Nuxt使用Vuex的方法示例
Sep 06 #Javascript
vue中input的v-model清空操作
Sep 06 #Javascript
nuxt框架中对vuex进行模块化设置的实现方法
Sep 06 #Javascript
layui 表格操作列按钮动态显示的实现方法
Sep 06 #Javascript
基于Vue和Element-Ui搭建项目的方法
Sep 06 #Javascript
You might like
信用卡效验程序
2006/10/09 PHP
php动态实现表格跨行跨列实现代码
2012/11/06 PHP
浅析虚拟主机服务器php fsockopen函数被禁用的解决办法
2013/08/07 PHP
laravel5.4利用163邮箱发送邮件的步骤详解
2017/09/22 PHP
laravel 修改.htaccess文件 重定向public的解决方法
2019/10/12 PHP
js 控制页面跳转的5种方法
2013/09/09 Javascript
使用jquery操作session方法分享
2015/01/22 Javascript
JavaScript中神奇的call()方法
2015/03/12 Javascript
JavaScript中setMonth()方法的使用详解
2015/06/11 Javascript
JQuery自动触发事件的方法
2015/06/13 Javascript
解决jQuery uploadify在非IE核心浏览器下无法上传
2015/08/05 Javascript
Node.JS使用Sequelize操作MySQL的示例代码
2017/10/09 Javascript
vue init失败简单解决方法(终极版)
2017/12/22 Javascript
nodejs express配置自签名https服务器的方法
2018/05/22 NodeJs
基于vue项目设置resolves.alias: '@'路径并适配webstorm
2020/12/02 Vue.js
python中base64加密解密方法实例分析
2015/05/16 Python
python使用matplotlib绘制柱状图教程
2017/02/08 Python
深入了解Python中pop和remove的使用方法
2018/01/09 Python
java中两个byte数组实现合并的示例
2018/05/09 Python
设置python3为默认python的方法
2018/10/31 Python
Python面向对象程序设计之私有属性及私有方法示例
2019/04/08 Python
[机器视觉]使用python自动识别验证码详解
2019/05/16 Python
python飞机大战 pygame游戏创建快速入门详解
2019/12/17 Python
Pytorch GPU显存充足却显示out of memory的解决方式
2020/01/13 Python
keras处理欠拟合和过拟合的实例讲解
2020/05/25 Python
美国在线印刷公司:PsPrint
2017/10/12 全球购物
会计职业生涯规划书
2014/01/13 职场文书
考试违纪检讨书
2014/02/02 职场文书
动漫专业高职生职业生涯规划书
2014/02/15 职场文书
食品业务员岗位职责
2014/03/18 职场文书
地下停车场租赁协议范本
2014/10/07 职场文书
抄袭同学作业检讨书1000字
2014/11/20 职场文书
老乡聚会通知
2015/04/23 职场文书
推广普通话主题班会
2015/08/17 职场文书
Java 垃圾回收超详细讲解记忆集和卡表
2022/04/08 Java/Android
使用 DataAnt 监控 Apache APISIX的原理解析
2022/07/07 Servers