Webpack:使用Loader打包图片
程序员文章站
2022-05-30 17:44:30
...
file-loader
webpack.config.js
const path = require('path'); //引入node核心模块
module.exports = {
mode: 'development',//打包模式(默认)
entry: {
main: './src/index.js',//从那一个文件开始打包
},
module: { //当遇到不知道怎么打包的模块时,到此位置查找
rules: [{
test: /\.(jpg|png|gif)$/, //打包的文件以jpg,png,gif结尾
use: {
loader: 'file-loader',
options: { //file-loader配置项
//placeholder 占位符
name: '[name]_[hash].[ext]',//保持打包后的图片名字和原来一样
outputPath: 'images/'
//打包后的图片输出到images文件夹中
}
}
}]
},
output: { //打包好的文件,放置信息如下
path: path.resolve(__dirname, 'dist'),
//dirname 表示当前路径,dist 是文件夹
filename: 'bundle.js'
}
}
url-loader
- 可以实现file-loader的一切功能。
- 会把图片转化成base64的字符串。
- 好处:不用额外的请求一个图片的地址
- 坏处:图片大。js文件大,会导致加载js的时间很长,一开始很长的时间,页面上什么东西都显示不出来
- 最佳方式:用url-loader打包1KB到2KB的图片,节约http请求
webpack.config.js
const path = require('path'); //引入node核心模块
module.exports = {
mode: 'development',//打包模式(默认)
entry: {
main: './src/index.js',//从那一个文件开始打包
},
module: { //当遇到不知道怎么打包的模块时,到此位置查找
rules: [{
test: /\.(jpg|png|gif)$/,
use: {
loader: 'url-loader',
options: {
name: '[name]_[hash].[ext]',
outputPath: 'images/',
limit: 2048
//图片小于2KB,则打包成base64,否则像file-loader一样打包
}
}
}]
},
output: { //打包好的文件,放置信息如下
path: path.resolve(__dirname, 'dist'),
//dirname 表示当前路径,dist 是文件夹
filename: 'bundle.js'
}
}
上一篇: PHP下对数组进行排序的函数_php技巧
下一篇: MySQL创建数据库和数据库表
推荐阅读
-
file-loader打包图片文件时路径错误输出为[object-module]的解决方法
-
详解如何使用webpack打包多页jquery项目
-
webpack-url-loader 解决项目中图片打包路径问题
-
Webpack中css-loader和less-loader的使用教程
-
新手快速上手webpack4打包工具的使用详解
-
vue解决使用webpack打包后keep-alive不生效的方法
-
浅谈 Webpack 如何处理图片(开发、打包、优化)
-
使用webpack打包后的vue项目如何正确运行(express)
-
webpack-url-loader 解决项目中图片打包路径问题
-
详解如何使用webpack打包多页jquery项目