Webpack框架核心概念(知识点整理)


Posted in Javascript onDecember 22, 2017

webpack是什么

webpack是一个前端构建的打包工具(并不是什么库或框架), 它能把各种资源,例如JS(含JSX)、coffee、css(含less/sass)、图片等都作为模块来处理和使用。

Webpack框架核心概念(知识点整理)

1.基础知识点

1.1 webpack 是一个现代 JavaScript 应用程序的模块打包器(module bundler)。当 webpack 处理应用程序时,它会递归地构建一个依赖关系图(dependency graph),其中包含应用程序需要的每个模块,然后将所有这些模块打包成一个或多个 bundle。

1.2webpack的四个核心概念:

1.2.1 entry(入口):entry point,入口起点(可以有多个),webpack会从该起点出发,找出哪些文件时入口文件所依赖的,从而构建内部依赖关系图,并处理后输出到称之为bundles的文件中

1.2.2 output(输出):指定经entry point处理后的bundles文件的输出路径(path)和名字(filename)

1.2.3 loader(加载器):用来处理非JS文件,可以将所有文件转换成webpack可以处理的模块,然后交给webpack进行打包等处理;webpack loader 本质上讲是将所有类型的文件转化为应用程序的依赖图可以直接引用的模块,其有两个目标:

1.2.3.1 使用test属性,识别出对应于 loader 的可转换文件

1.2.3.2 使用use属性将这些文件进行转换,使其被添加到依赖图中,并且最终会添加到 bundle 中

如果要在 webpack 配置中定义 loader ,要在 module.rules 中定义,而不是 rules

1.2.4 plugins(插件):从打包优化和压缩,一直到重新定义环境中的变量。插件接口功能极其强大,可以处理各种各样的任务

使用一个插件只需要 require() 它,然后把它添加到 plugins 数组中就行。多数插件可以通过选项(option)自定义。你也可以在一个配置文件中因为不同目的而多次使用同一个插件,这时需要通过使用 new 操作符来创建它的一个实例。

webpack 提供许多开箱可用的插件!查阅插件列表获取更多信息,更详细的图文请参阅官方文档 https://doc.webpack-china.org/concepts/。

总结

以上所述是小编给大家介绍的Webpack框架核心概念(知识点整理),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木的支持!

Javascript 相关文章推荐
Jquery 数据选择插件Pickerbox使用介绍
Aug 24 Javascript
JavaScript 更严格的相等 [译]
Sep 20 Javascript
jQuery元素选择器用法实例
Dec 23 Javascript
JavaScript的事件代理和委托实例分析
Mar 25 Javascript
jquery实现叠层3D文字特效代码分享
Aug 21 Javascript
onclick和onblur冲突问题的快速解决方法
Apr 28 Javascript
javascript 中的try catch应用总结
Apr 01 Javascript
JavaScript中in和hasOwnProperty区别详解
Aug 04 Javascript
Angular 项目实现国际化的方法
Jan 08 Javascript
Vue.js+Layer表格数据绑定与实现更新的实例
Mar 07 Javascript
原生JS forEach()和map()遍历的区别、兼容写法及jQuery $.each、$.map遍历操作
Feb 27 jQuery
微信小程序和H5页面间相互跳转代码实例
Sep 19 Javascript
详解webpack+express多页站点开发
Dec 22 #Javascript
如何开发出更好的JavaScript模块
Dec 22 #Javascript
详解webpack提取第三方库的正确姿势
Dec 22 #Javascript
利用JS判断客户端类型你应该知道的四种方法
Dec 22 #Javascript
JavaScript伪数组用法实例分析
Dec 22 #Javascript
JavaScript中Object值合并方法详解
Dec 22 #Javascript
Angular简单验证功能示例
Dec 22 #Javascript
You might like
聊天室php&mysql(二)
2006/10/09 PHP
超级简单的php+mysql留言本源码
2009/11/11 PHP
php strstr查找字符串中是否包含某些字符的查找函数
2010/06/03 PHP
PHP查询MySQL大量数据的时候内存占用分析
2011/07/22 PHP
Netbeans 8.2与PHP相关的新特性介绍
2016/10/08 PHP
jquery ajax 登录验证实现代码
2009/09/23 Javascript
Extjs学习笔记之九 数据模型(上)
2010/01/11 Javascript
javascript函数中的arguments参数
2010/08/01 Javascript
jquery事件机制扩展插件 jquery鼠标右键事件
2011/12/21 Javascript
jquery 如何动态添加、删除class样式方法介绍
2012/11/07 Javascript
IE下写xml文件的两种方式(fso/saveAs)
2013/08/05 Javascript
JS图片无缝、平滑滚动代码
2014/03/11 Javascript
jquery和css3实现的炫酷时尚的菜单导航
2014/09/01 Javascript
15个常用的jquery代码片段
2015/12/19 Javascript
JQuery Mobile实现导航栏和页脚
2016/03/09 Javascript
通过BootStrap-select插件 js jQuery控制select属性变化
2017/01/03 Javascript
bootstrap模态框嵌套、tabindex属性、去除阴影的示例代码
2017/10/17 Javascript
JS无限级导航菜单实现方法
2019/01/05 Javascript
vue-cli3环境变量与分环境打包的方法示例
2019/02/18 Javascript
封装微信小程序http拦截器过程解析
2019/08/13 Javascript
python检测远程服务器tcp端口的方法
2015/03/14 Python
python中文件变化监控示例(watchdog)
2017/10/16 Python
Windows环境下python环境安装使用图文教程
2018/03/13 Python
Python cookbook(数据结构与算法)将名称映射到序列元素中的方法
2018/03/22 Python
Tensorflow 多线程设置方式
2020/02/06 Python
学python最电脑配置有要求么
2020/07/05 Python
用pandas划分数据集实现训练集和测试集
2020/07/20 Python
中医药大学市场营销专业自荐信
2013/09/29 职场文书
程序员岗位职责
2013/11/11 职场文书
毕业生自荐信
2013/12/14 职场文书
2014年五一活动策划方案
2014/03/15 职场文书
检察机关个人对照检查材料
2014/09/15 职场文书
机关党总支领导班子整改方案
2014/09/20 职场文书
2015年初中生自我评价范文
2015/03/03 职场文书
导游词之桂林山水
2019/09/20 职场文书
Win10鼠标轨迹怎么开 Win10显示鼠标轨迹方法
2022/04/06 数码科技