脚手架vue-cli工程webpack的作用和特点


Posted in Javascript onSeptember 29, 2018

Vue项目开发过程中,会因为很多不同的实际运用需求不断地对webpack配置进行修改,在此之前,我们需要对webpack有一个基本的认识,了解它到底能为我们做些什么

webpack是一个模块打包的工具,它的作用是把互相依赖的模块处理成静态资源,如下图所示。.

脚手架vue-cli工程webpack的作用和特点

webpack的作用:

●把依赖树按需分割;

●把初始加载时间控制在较低的水平;

●每个静态资源都应该成为一个模块;

●能把第三方库集成到项目里成为一个模块;

●能定制模块打包器的每个部分;

●能适用于大型项目。

webpack的特点:

●    代码分割

在webpack的依赖树里有两种类型的依赖:同步依赖和异步依赖。异步依赖会成为一个代码分割点,并且组成一个新的代码块。在代码块组成的树被优化之后,每个代码块都会保存在一个单独的文件里。

●加载器

webpack原生是只能处理JavaScript的,而加载器的作用是把其他的代码转换成JavaScript代码,这样一来所有种类的代码都能组成一个模块,也就是说,我们可以在代码内通过import将webpack打包的资源以模块的方式引入到程序中。

以下是Vue项目中常用到的加载器(它们都是以NPM库形式提供的):

vue-loader——用于加载与编译*.vue文件;

vue-style-loader——用于加载*.vue文件中的样式;

style-loader——用于将样式直接插入到页面的<style>内;

css-loader——用于加载*.css样式表文件;

less-loader——用于编译与加载*.less文件(需要依赖于less库);

babel-loader——用于将ES6编译成为浏览器兼容的ES5;

file-loader——用于直接加载文件;

url-loader——用于加载URL指定的文件,多用于字体与图片的加载;

json-loader——用于加载*.json文件为JS实例。

●  智能解析

webpack的智能解析器能处理几乎所有的第三方库,它甚至允许依赖里出现这样的表达式:

require("./components/"+ name + ".vue")

这一点恰恰是browserify不能做到的。

它能处理大多数的模块系统,比如说CommonJS和AMD。

●插件系统

webpack有丰富的插件系统,大多数内部的功能都是基于这个插件系统的。这也使得我们可以定制webpack,把它打造成能满足我们需求的工具,并且把自己做的插件开源出去。

总结

以上所述是小编给大家介绍的vue-cli工程webpack的作用和特点,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
javascript 动态生成私有变量访问器
Dec 06 Javascript
文本框中,回车键触发事件的js代码[多浏览器兼容]
Jun 07 Javascript
对象无length属性时IE6/IE7中无法将其转换成伪数组(ArrayLike)
Jul 31 Javascript
JavaScript fontcolor方法入门实例(按照指定的颜色来显示字符串)
Oct 17 Javascript
javascript省市级联功能实现方法实例详解
Oct 20 Javascript
js实现表单多按钮提交action的处理方法
Oct 24 Javascript
微信小程序 缓存(本地缓存、异步缓存、同步缓存)详解
Jan 17 Javascript
AngularJS ui-router (嵌套路由)实例
Mar 10 Javascript
JS基于贪心算法解决背包问题示例
Nov 27 Javascript
JavaScript根据json生成html表格的示例代码
Oct 24 Javascript
JavaScript十大取整方法实例教程
Dec 03 Javascript
JS中锚点链接点击平滑滚动并自由调整到顶部位置
Feb 06 Javascript
基于vue和react的spa进行按需加载的实现方法
Sep 29 #Javascript
使用Vuex解决Vue中的身份验证问题
Sep 28 #Javascript
js限制输入框只能输入数字(onkeyup触发)
Sep 28 #Javascript
js限制input只能输入有效的数字(第一个不能是小数点)
Sep 28 #Javascript
js实现点击展开隐藏效果(实例代码)
Sep 28 #Javascript
javascript中toFixed()四舍五入使用方法详解
Sep 28 #Javascript
对vue中v-if的常见使用方法详解
Sep 28 #Javascript
You might like
Win2003服务器安全加固设置--进一步提高服务器安全性
2007/05/23 PHP
discuz论坛 用户登录 后台程序代码
2008/11/27 PHP
FirePHP 推荐一款PHP调试工具
2011/04/23 PHP
如何获知PHP程序占用多少内存(memory_get_usage)
2012/09/23 PHP
PHP+Mysql+jQuery文件下载次数统计实例讲解
2015/10/10 PHP
风吟的小型JavaScirpt库 (FY.JS).
2010/03/09 Javascript
基于jQuery的的一个隔行变色,鼠标移动变色的小插件
2010/07/06 Javascript
js中关于一个分号的崩溃示例
2013/11/11 Javascript
js类型转换与引用类型详解(Boolean_Number_String)
2014/03/07 Javascript
js和jquery如何获取图片真实的宽度和高度
2014/09/28 Javascript
JavaScript中对象property的读取和写入方法介绍
2014/12/30 Javascript
javascript事件委托的方式绑定详解
2015/06/10 Javascript
javascript随机抽取0-100之间不重复的10个数
2016/02/25 Javascript
深入解析JavaScript中函数的Currying柯里化
2016/03/19 Javascript
JavaScript实现倒计时跳转页面功能【实用】
2016/12/13 Javascript
jquery uploadify如何取消已上传成功文件
2017/02/08 Javascript
解决nodejs的npm命令无反应的问题
2018/05/17 NodeJs
浅析vue-cli3配置webpack-bundle-analyzer插件【推荐】
2019/10/23 Javascript
基于JS正则表达式实现模板数据动态渲染(实现思路详解)
2020/03/07 Javascript
浅析Python中元祖、列表和字典的区别
2016/08/17 Python
详解Python中最难理解的点-装饰器
2017/04/03 Python
对python中的控制条件、循环和跳出详解
2019/06/24 Python
Django CBV与FBV原理及实例详解
2019/08/12 Python
Python 网络编程之TCP客户端/服务端功能示例【基于socket套接字】
2019/10/12 Python
Django 再谈一谈json序列化
2020/03/16 Python
python操作yaml说明
2020/04/08 Python
pytorch中index_select()的用法详解
2021/01/06 Python
linux面试题参考答案(5)
2014/09/01 面试题
Python使用openpyxl复制整张sheet
2021/03/24 Python
打造完美自荐信
2014/01/24 职场文书
群众路线专项整治方案
2014/10/27 职场文书
小学生手册家长意见
2015/06/03 职场文书
导游词之无锡古运河
2019/11/14 职场文书
python自然语言处理之字典树知识总结
2021/04/25 Python
一篇文章带你了解Python和Java的正则表达式对比
2021/09/15 Python
《LOL》“克隆大作战”久违归来 幻灵战队皮肤上线
2022/04/03 其他游戏