| |
|
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
| -> JavaScript知识库 -> vue-router引入组件的几种方式及打包区别 -> 正文阅读 |
|
|
[JavaScript知识库]vue-router引入组件的几种方式及打包区别 |
|
本文使用@vue/cli 5.0.1创建的vue2工程做的验证,预置数据package.json详见最后,其中后三种方式vue路由懒加载的方式。 之前有个操作window全局函数的时候,使用直接引入的方式,结果并没有执行,原因是这种方式会把所有引入的组件打包成一个js,而这个组件又异步引入了很多其它组件及服务,导致window函数的顺序调整导致了没有执行,改成异步加载的方式之后,window函数又能正确的执行啦。 方式一:普通直接引用的方式
这种方式会这直接将引入的组件一起打进一个js文件中(这里我用的是app.bundule.js),当引入组件过多的时候,会造成性能问题,如下图
我们也可以通过打包后的report.html来查看效果,如下图(可以通过vue-cli-service build --report命令生成report.html文件)
app.bundle.js中具体的路由代码
方式二:es提案的 import()的方式(打出来的包跟网上有些区别,可能vue/cli版本不一致,请大佬不吝赐教)
从网上其它资料得知,这种方式打包后会生成home.hash.js和coma.hash.js两个js文件,但是我打出来js却跟方式一的一样,见report.html图
?可以确定的是这种方式是异步加载组件,app.bundle.js中具体的路由代码,如下图
?方式三:resovle=>require方式引入
打包后生成app.bundle.js,还额外生成一个js文件夹,文件夹包含两个js文件分别对应两个组件,如下图
?report.html图
生成的app.bundle.js中具体的路由代码,如下图
?方式四:webpack 的 require.ensure()方式(这个跟方式三生成后的内容及其相似,不过可以指定生成后的js名称)
打包后生成app.bundle.js,还额外生成一个js文件夹,文件夹包含两个js文件分别对应两个组件,如下图
?report.html图
?生成的app.bundle.js中具体的路由代码,如下图 ?package.json
|
|
|
| JavaScript知识库 最新文章 |
| ES6的相关知识点 |
| react 函数式组件 & react其他一些总结 |
| Vue基础超详细 |
| 前端JS也可以连点成线(Vue中运用 AntVG6) |
| Vue事件处理的基本使用 |
| Vue后台项目的记录 (一) |
| 前后端分离vue跨域,devServer配置proxy代理 |
| TypeScript |
| 初识vuex |
| vue项目安装包指令收集 |
|
|
| 上一篇文章 下一篇文章 查看所有文章 |
|
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
| 360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年11日历 | -2025/11/13 16:23:36- |
|
| 网站联系: qq:121756557 email:121756557@qq.com IT数码 |