千家信息网

webpack的打包原理

发表于:2024-11-11 作者:千家信息网编辑
千家信息网最后更新 2024年11月11日,小编给大家分享一下webpack的打包原理,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!webpack打包原理是将根据文件间的依赖关系对其进行静态分析,然后将这些模块按指定规则生成静
千家信息网最后更新 2024年11月11日webpack的打包原理

小编给大家分享一下webpack的打包原理,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

webpack打包原理是将根据文件间的依赖关系对其进行静态分析,然后将这些模块按指定规则生成静态资源,当 webpack处理程序时,会递归地构建一个依赖关系图,其中包含应用程序需要的每个模块,然后将所所有这些模块打包成bundle。

将根据文件间的依赖关系对其进行静态分析,然后将这些模块按指定规则生成静态资源,当 webpack 处理程序时,会递归地构建一个依赖关系图(dependency graph),其中包含应用程序需要的每个模块,然后将所有这些模块打包成一个或多个 bundle。

webpack只是一个打包模块的机制,只是把依赖的模块转化成可以代表这些包的静态文件。并不是什么commonjs或者amd之类的模块化规范。webpack就是识别你的入口文件。识别你的模块依赖,来打包你的代码。

至于你的代码使用的是commonjs还是amd或者es6的import。webpack都会对其进行分析。来获取代码的依赖。

webpack做的就是分析代码。转换代码,编译代码,输出代码。webpack本身是一个node的模块,所以webpack.config.js是以commonjs形式书写的(node中的模块化是commonjs规范的)

webpack中每个模块有一个唯一的id,是从0开始递增的。整个打包后的bundle.js是一个匿名函数自执行。参数则为一个数组。数组的每一项都为个function。function的内容则为每个模块的内容,并按照require的顺序排列。

扩展资料:

webpack 核心概念:

1、Entry

入口起点(entry point)指示 webpack 应该使用哪个模块,来作为构建其内部依赖图的开始。进入入口起点后,webpack 会找出有哪些模块和库是入口起点(直接和间接)依赖的。每个依赖项随即被处理,最后输出到称之为 bundles 的文件中。

2、Output

output 属性告诉 webpack 在哪里输出它所创建的 bundles,以及如何命名这些文件,默认值为 ./dist。基本上,整个应用程序结构,都会被编译到指定的输出路径的文件夹中。

3、Module

模块,在 Webpack 里一切皆模块,一个模块对应着一个文件。Webpack 会从配置的 Entry 开始递归找出所有依赖的模块。

4、Chunk

代码块,一个 Chunk 由多个模块组合而成,用于代码合并与分割。

5、Loader

loader 让 webpack 能够去处理那些非 JavaScript 文件(webpack 自身只理解 JavaScript)。

loader 可以将所有类型的文件转换为 webpack 能够处理的有效模块,然后就可以利用 webpack 的打包能力,对它们进行处理。

本质上,webpack loader 将所有类型的文件,转换为应用程序的依赖图(和最终的 bundle)可以直接引用的模块。

看完了这篇文章,相信你对"webpack的打包原理"有了一定的了解,如果想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!

模块 文件 代码 程序 处理 静态 入口 应用程序 分析 应用 输出 原理 起点 递归 内容 只是 多个 就是 数组 篇文章 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 源文件数据库查重 恒岳互联网科技有限公司 数据库索引设计与优化 禅道数据库初始密码 西安学开发软件开发 浙江服务器机柜哪个好 深澜认证服务器 选择框 数据库结合 服务器内存能用在台式机上 石景山区专业性软件开发范围 深圳服务器租用 最普通的软件开发需要多少钱 巴中网络安全志愿者图片 怎么登录阿里云云服务器 剑网3指尖江湖各服务器开服时间 分布式数据库开发应用 ea访问服务器数据出现错误 辽源市网络安全等级保护 宝山区创新数据库服务商销售价格 软件开发环境搭建需要多久 中国网络服务器终端在哪个地方 大学什么专业学的网络安全 文献专题数据库是干嘛的 sftp客户端服务器不兼容 网络安全中的诚信问题有哪些 服务器安全吗在哪看 网络安全服务管家亮相 老是弹出数据库错误 数据库异常类c 上海煜鸿互联网科技有限公司
0