url-loader和file-loader的区别和使用
webpack是用JS写的,运行在node环境,所以默认webpack打包的时候只会处理JS之间的依赖关系!!! 如果你不相信,你可以创建如下类似的代码尝试在JS中导入图片 然后运行打包命令就发生报错现象(不要编写webpack.config.js就可以直接打包,这是webpack4新加的功能,但是入口文件必须是src/index.js文件必须要有) 提示我们需要提供相关的loader来处理图片类型的文件。 因为像 .png 这样的文件不是一个 JavaScript 模块,你需要配置 webpack 使用 file-loader 或者 url-loader 去合理地处理它们。 转换资源 URL 的好处是: file-loader 可以指定要复制和放置资源文件的位置,以及如何使用版本哈希命名以获得更好的缓存。此外,这意味着 你可以就近管理图片文件,可以使用相对路径而不用担心部署时 URL 的问题。使用正确的配置,webpack 将会在打包输出中自动重写文件路径为正确的 URL。 url-loader 允许你有条件地将文件转换为内联的 base-64 URL (当文件小于给定的阈值),这会减少小文件的 HTTP 请求数。如果文件大于该阈值,会自动的交给 file-loader 处理。 我们之前 require('./banner.jpg') 图片是为了得到图片的路径