# fed-e-task-02-02 **Repository Path**: MinarLearningCenter/fed-e-task-02-02 ## Basic Information - **Project Name**: fed-e-task-02-02 - **Description**: No description available - **Primary Language**: JavaScript - **License**: MulanPSL-1.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-09-27 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 简答题 ## Webpack 的构建流程主要有哪些环节?如果可以请尽可能详尽的描述 Webpack 打包的整个过程 Webpack 以预先配置的入口文件(js 文件)为打包起点,然后解析该文件所引用到的其他文件,通过 Loader 去加载这些文件以及这些文件依赖的其他文件,Loader 的作用就是实现非 js 文件的转换,使其可以作为 js 模块使用,同时在加载的过程中还可以对引入的文件进行一些转换。最后将完全转换好的文件输出到指定的目录下。在转换的过程中,还可以在配置文件中开启一些其他的功能,如代码分包。在 webpack 构建的整个过程中,还可以通过插件的方式在构建的某个阶段挂载钩子函数,对转换的中间过程进行干涉,最终得到预期的打包结果。 ## Loader 和 Plugin 有哪些不同?请描述一下开发 Loader 和 Plugin 的思路 Loader 的主要作用是用来加载非 js 的文件,开发一个 Loader 的核心思想就是把文件变成 js 模块,中途可以加入一些配置用来修改模块的内容。 Plugin 的主要作用是修改 webpack 打包过程中的中间代码,它是对整个过程的一种干涉,而不仅仅是某类文件,开发 Plugin 需要考虑这个插件挂载的钩子位置,对整个编译过程的整体影响。 ## 编程题视频地址 https://www.bilibili.com/video/BV1zz4y1Z73E/