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应该怎样学
Apr 16 Javascript
精通Javascript系列之Javascript基础篇
Jun 07 Javascript
js键盘上下左右键怎么触发function(实例讲解)
Dec 14 Javascript
JavaScript中使用Object.prototype.toString判断是否为数组
Apr 01 Javascript
javascript中Array()数组函数详解
Aug 23 Javascript
JS实现横向与竖向两个选项卡Tab联动的方法
Sep 27 Javascript
轻松实现JavaScript图片切换
Jan 12 Javascript
Bootstrap自动适应PC、平板、手机的Bootstrap栅格系统
May 27 Javascript
本地搭建微信小程序服务器的实现方法
Oct 27 Javascript
JS根据Unix时间戳显示发布时间是多久前【项目实测】
Jul 10 Javascript
layui自定义插件citySelect实现省市区三级联动选择
Jul 26 Javascript
小程序点餐界面添加购物车左右摆动动画
Sep 23 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 代码优化的42条建议 推荐
2009/09/25 PHP
PHP模块memcached使用指南
2014/12/08 PHP
PHP Warning: Module 'modulename' already loaded in问题解决办法
2015/03/16 PHP
简单介绍PHP的责任链编程模式
2015/08/11 PHP
PHP基于GD库的图像处理方法小结
2016/09/27 PHP
PHP无限极分类函数的实现方法详解
2017/04/15 PHP
PHP实现表单提交数据的验证处理功能【防SQL注入和XSS攻击等】
2017/07/21 PHP
PHP PDOStatement::fetch讲解
2019/01/31 PHP
PHP从零开始打造自己的MVC框架之类的自动加载实现方法详解
2019/06/03 PHP
Javascript倒计时页面跳转实例小结
2013/09/11 Javascript
jQuery基于当前元素进行下一步的遍历
2014/05/20 Javascript
Nodejs中自定义事件实例
2014/06/20 NodeJs
javascript实现锁定网页、密码解锁效果(类似系统屏幕保护效果)
2014/08/15 Javascript
Node.js服务器环境下使用Mock.js拦截AJAX请求的教程
2016/05/23 Javascript
js微信分享API
2020/10/11 Javascript
基于JS快速实现导航下拉菜单动画效果附源码下载
2016/10/27 Javascript
基于JavaScript实现验证码功能
2017/04/01 Javascript
详解vue-cli中的ESlint配置文件eslintrc.js
2017/09/25 Javascript
JavaScript设计模式之构造函数模式实例教程
2018/07/02 Javascript
Spring boot 和Vue开发中CORS跨域问题解决
2018/09/05 Javascript
JavaScript中CreateTextFile函数
2020/08/30 Javascript
对numpy中的数组条件筛选功能详解
2018/07/02 Python
python 快速把超大txt文件转存为csv的实例
2018/10/26 Python
python保存二维数组到txt文件中的方法
2018/11/15 Python
Django中的cookie和session
2019/08/27 Python
python中@property的作用和getter setter的解释
2020/12/22 Python
ebookers英国:隶属全球最大的在线旅游公司Expedia
2017/12/28 全球购物
英国第一职业高尔夫商店:Clickgolf.co.uk
2020/11/18 全球购物
Ooni英国官网:披萨烤箱
2020/05/31 全球购物
什么是反射?如何实现反射?
2016/07/25 面试题
租赁协议书范本
2014/04/22 职场文书
领导干部整治奢华浪费之风思想汇报
2014/10/07 职场文书
Go 实现英尺和米的简单单位换算方式
2021/04/29 Golang
python基础之函数的定义和调用
2021/10/24 Python
springboot用户数据修改的详细实现
2022/04/06 Java/Android