4.1 缩小文件搜索范围
问题一:为什么要缩小文件搜索范围?
Webpack 启动后会从配置的 Entry 出发,解析出文件中的导入语句,再递归的解析。 在遇到导入语句时 Webpack 会做两件事情:
根据导入语句去寻找对应的要导入的文件。例如require('react')导入语句对应的文件是./node_modules/react/react.js,require('./util')对应的文件是./util.js。
根据找到的要导入文件的后缀,使用配置中的 Loader 去处理文件。例如使用 ES6 开发的 JavaScript 文件需要使用 babel-loader 去处理。
以上两件事情虽然对于处理一个文件非常快,但是当项目大了以后文件量会变的非常多,这时候构建速度慢的问题就会暴露出来。 虽然以上两件事情无法避免,但需要尽量减少以上两件事情的发生,以提高速度。
问题二:优化缩小文件的搜索范围的途径有哪些?
优化 loader 配置
优化 resolve.modules 配置
优化 resolve.mainFields 配置
优化 resolve.alias 配置
优化 resolve.extensions 配置
优化 module.noParse 配置
网友评论