Skip to content

Latest commit

 

History

History
50 lines (15 loc) · 1.88 KB

zt-webpack-qa.md

File metadata and controls

50 lines (15 loc) · 1.88 KB

webpack 常见问题

什么是webpack?

webpack是javascript应用程序的模块打包程序。Webpack递归地构建应用程序中的每个模块,然后将所有这些模块打包到少量的bundle中。

webpack和其他构建工具(如gulp或grunt)之间的主要区别是什么?

Webpack是一个模块打包器,虽然它经常用来代替Gulp或Grunt任务运行器。这种先进的工具为开发人员提供了对模块进行分割的控制,使他们能够根据特定情况调整构建,并且无法正常工作。

比较Webpack和Grunt,第一个为现代前端项目提供了更多的灵活性和先进的功能。它带有一个功能核心,可以使用特定的装载机和插件进行扩展。本质上,它被用于将JavaScript模块与依赖关系捆绑到文件中,但对于具有大量非代码资产(图像,字体,CSS等)的复杂JavaScript应用程序,它可以提供很大的好处。

在谈论Webpack vs Gulp vs Grunt的性能时,后者会查找与您的配置相匹配的文件的定义路径,而Webpack会分析整个项目。它查看所有的依赖关系,使用加载器处理它们,并生成捆绑的JS文件。

webpack中的包是什么?

bundle是webpack生成的输出文件。它包含应用程序中使用的所有模块。Bundles生成过程由webpack配置文件调整。

webpack在哪个环境下工作?

node.js

什么是entry观点

入口对象是webpack看起来开始构建bundle的地方,此时应用程序开始执行。

什么是依赖关系图,webpack如何构建它?

任何时候一个文件依赖于另一个文件,webpack会将其视为依赖关系。从入口点开始,webpack递归地构建一个依赖关系图,该关系图包含应用程序需要的每个模块,使用importrequire语句,然后将所有这些模块打包成一个或多个包。