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 相关文章推荐
客户端脚本中常常出现的一些问题和调试技巧
Jan 09 Javascript
ff chrome和ie下全局动态定位的异同及全局高度的取法
Jun 30 Javascript
JavaScript常用字符串与数组扩展函数小结
Apr 24 Javascript
Angularjs修改密码的实例代码
May 26 Javascript
js分页之前端代码实现和请求处理
Aug 04 Javascript
express框架实现基于Websocket建立的简易聊天室
Aug 10 Javascript
详解vue表单——小白速看
Apr 08 Javascript
基于VUE实现的九宫格抽奖功能
Sep 30 Javascript
jQuery实现的卷帘门滑入滑出效果【案例】
Feb 18 jQuery
详解vue在项目中使用百度地图
Mar 26 Javascript
layui导出所有数据的例子
Sep 10 Javascript
vue实现验证用户名是否可用
Jan 20 Vue.js
详解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
PHP CURL模拟GET及POST函数代码
2010/04/25 PHP
使用PHP求两个文件的相对路径
2013/06/20 PHP
PHP的Laravel框架结合MySQL与Redis数据库的使用部署
2016/03/21 PHP
PHP工厂模式、单例模式与注册树模式实例详解
2019/06/03 PHP
浅谈PHP5.6 与 PHP7.0 区别
2019/10/09 PHP
非常好的js代码
2006/06/27 Javascript
JS 删除字符串最后一个字符的实现代码
2014/02/20 Javascript
用js的document.write输出的广告无阻塞加载的方法
2014/06/05 Javascript
get(0).tagName获得作用标签示例代码
2014/10/08 Javascript
JavaScript判断表单为空及获取焦点的方法
2016/02/12 Javascript
bootstrap网页框架的使用方法
2016/05/10 Javascript
基于JS实现导航条flash导航条
2016/06/17 Javascript
jQuery实现的小图列表,大图展示效果幻灯片示例
2016/10/25 Javascript
js获取指定字符前/后的字符串简单实例
2016/10/27 Javascript
浅谈DOM的操作以及性能优化问题-重绘重排
2017/01/08 Javascript
nodejs 实现钉钉ISV接入的加密解密方法
2017/01/16 NodeJs
浅谈angularjs依赖服务注入写法的注意点
2017/04/24 Javascript
利用Mongoose让JSON数据直接插入或更新到MongoDB
2017/05/03 Javascript
webpack 打包压缩js和css的方法示例
2018/03/20 Javascript
详解vue-cli官方脚手架配置
2018/07/20 Javascript
javascript实现贪吃蛇小游戏
2020/07/28 Javascript
[00:32]2018DOTA2亚洲邀请赛Secret出场
2018/04/03 DOTA
浅谈python中set使用
2016/06/30 Python
python numpy函数中的linspace创建等差数列详解
2017/10/13 Python
Python发展简史 Python来历
2019/05/14 Python
python实现五子棋游戏(pygame版)
2020/01/19 Python
python实现一次性封装多条sql语句(begin end)
2020/06/06 Python
Python类的继承super相关原理解析
2020/10/22 Python
业务经理岗位职责
2013/11/11 职场文书
学术会议欢迎词
2014/01/09 职场文书
岗位廉政承诺书
2014/03/27 职场文书
音乐节策划方案
2014/06/09 职场文书
村官个人总结范文
2015/03/03 职场文书
优秀班主任工作总结2015
2015/05/25 职场文书
运动会开幕式通讯稿
2015/07/18 职场文书
运动会三级跳加油稿
2015/07/21 职场文书