脚手架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 相关文章推荐
jQuery 点击图片跳转上一张或下一张功能的实现代码
Mar 12 Javascript
jQuery实现表单input中提示文字value随鼠标焦点移进移出而显示或隐藏的代码
Mar 21 Javascript
js实现键盘上下左右键选择文字并显示在文本框的方法
May 07 Javascript
jquery代码实现多选、不同分享功能
Jul 31 Javascript
angular route中使用resolve在uglify压缩后问题解决
Sep 21 Javascript
jquery实现多次上传同一张图片
Jan 09 Javascript
深入理解Javascript箭头函数中的this
Feb 13 Javascript
JQuery EasyUI的一些常用组件
Jul 12 jQuery
JavaScript canvas实现围绕旋转动画
Nov 18 Javascript
vue.js使用v-if实现显示与隐藏功能示例
Jul 06 Javascript
详解Bootstrap 学习(一)入门
Apr 12 Javascript
Javascript原型链及instanceof原理详解
May 25 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
PHP与javascript对多项选择的处理
2006/10/09 PHP
ThinkPHP、ZF2、Yaf、Laravel框架路由大比拼
2015/03/25 PHP
Twig模板引擎用法入门教程
2016/01/20 PHP
php中namespace use用法实例分析
2016/01/22 PHP
php ajax实现文件上传进度条
2016/03/29 PHP
Jquery iframe内部出滚动条
2010/02/11 Javascript
拉动滚动条加载数据的jquery代码
2012/05/03 Javascript
jquery图片放大镜功能的实例代码
2013/03/26 Javascript
关闭页面时window.location事件未执行的原因分析及解决方案
2014/09/01 Javascript
node.js中的fs.fsyncSync方法使用说明
2014/12/15 Javascript
jqTransform美化表单
2015/10/10 Javascript
常常会用到的截取字符串substr()、substring()、slice()方法详解
2015/12/16 Javascript
Bootstrap中点击按钮后变灰并显示加载中实例代码
2016/09/23 Javascript
JS控制页面跳转时未请求要跳转的地址怎么回事
2016/10/14 Javascript
vue2.0中goods选购栏滚动算法的实现代码
2017/05/17 Javascript
jQuery获取单选按钮radio选中值与去除所有radio选中状态的方法
2017/05/20 jQuery
使用vue构建一个上传图片表单
2017/07/04 Javascript
node的process以及child_process模块学习笔记
2018/03/06 Javascript
JavaScript闭包原理与用法学习笔记
2020/05/29 Javascript
python不带重复的全排列代码
2013/08/13 Python
django使用图片延时加载引起后台404错误
2017/04/18 Python
Pandas读写CSV文件的方法示例
2019/03/27 Python
Python中的正则表达式与JSON数据交换格式
2019/07/03 Python
Python 多个图同时在不同窗口显示的实现方法
2019/07/07 Python
Django 数据库同步操作技巧详解
2019/07/19 Python
基于python 凸包问题的解决
2020/04/16 Python
HTML5 对各个标签的定义与规定:body的介绍
2012/06/21 HTML / CSS
2014领导班子正风肃纪思想汇报
2014/09/18 职场文书
工作骂脏话检讨书
2014/10/05 职场文书
个人租房协议书(范本)
2014/10/14 职场文书
团员个人年度总结
2015/02/26 职场文书
2015年汽车销售工作总结
2015/04/07 职场文书
追悼会家属答谢词
2015/09/29 职场文书
医学生自荐信范文(2016精选篇)
2016/01/28 职场文书
2016年“我们的节日·重阳节”主题活动总结
2016/04/01 职场文书
Go微服务项目配置文件的定义和读取示例详解
2022/06/21 Golang