欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

Node.js webpack中url-loader处理图片路径

发布时间:2025/5/22 编程问答 81 豆豆
生活随笔 收集整理的这篇文章主要介绍了 Node.js webpack中url-loader处理图片路径 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

默认情况下, webpack 无法处理 css 文件中的 url 地址,不管是图片还是 字体库, 只要是 URL 地址,都处理不了,所以我们要使用 url-loader进行处理图片的url地址

安装 cnpm i url-loader file-loader -D

webpack.config.js文件
var path = require('path') var htmlWebpackPlugin = require('html-webpack-plugin')const webpack = require('webpack');module.exports = {entry: path.join(__dirname, './src/main.js'),output: { path: path.join(__dirname, './dist'), filename: 'bundle.js' },devServer: { open: true, port: 3000, contentBase: 'src', hot: true },plugins: [ /new webpack.HotModuleReplacementPlugin(),new htmlWebpackPlugin({template: path.join(__dirname, './src/index.html'), filename: 'index.html' })],module: { rules: [ // 第三方模块的匹配规则{ test: /\.css$/, use: ['style-loader', 'css-loader'] }, // 配置处理 .css 文件的 第三方 loader 规则{ test: /\.less$/, use: ['style-loader', 'css-loader', 'less-loader'] }, // 配置 处理 .less 文件的第三方 loader 规则{ test: /\.scss$/, use: ['style-loader', 'css-loader', 'sass-loader'] },// { test: /\.(jpg|png|gif|bmp|jpeg)$/, use: 'url-loader'} // 不传参 图片将 转为 base64 格式的字符串{ test: /\.(jpg|png|gif|bmp|jpeg)$/, use: 'url-loader?limit=7701460&name=[hash:8]-[name].[ext]'}]} }

loader处理 图片路径

  • limit参数:给定的值,是图片的大小,单位是 byte, 如果我们引用的图片,大于或等于给定的 limit 值,则不会转为 base64 格式的字符串,如果 图片小于给定的 limit 值,则会被转为 base64的字符串
  • name参数:使图片使用图片自定义的名称, [hash:10] 为hash 码截取前10位,最大位数可以填32位,因为生成的hash码只有32位。

注意:

  • 当使用url-loader 不添加任何参数时,默认图片将转为 base64 格式的字符串。
  • 在使用name参数时,如果两个图片的名字相同内容不同的照片同时调用,后加载的图片会先覆盖先加载的图片,通过加上[hash:10] 来区分两张图片,防止图片覆盖。

总结

以上是生活随笔为你收集整理的Node.js webpack中url-loader处理图片路径的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。