Assets ทั่วไปใน Webpack
ตอนนี้ลองมาทดสอบใช้ assets ทั่วไปกัน
มาทำให้รูปภาพที่มีขนาดน้อยกว่า 8kb
ถูกแปลงเป็น base64 ส่วนรูปภาพที่มีขนาดใหญ่กว่า
ค่านี้ให้คัดลอกไปเป็นไฟล์:
export default {
entry: './src/index.js',
output: {
filename: 'bundle.js',
path: path.resolve('dist'),
},
module: {
rules: [
{
test: /\.png$/,
type: 'asset',
}
]
},
plugins: [
new HtmlWebpackPlugin(),
],
};
เราสามารถเปลี่ยนขีดจำกัดขนาดของ
รูปภาพได้ ตัวอย่างเช่น กำหนดขีดจำกัด
ที่ 4kb:
export default {
entry: './src/index.js',
output: {
filename: 'bundle.js',
path: path.resolve('dist'),
},
module: {
rules: [
{
test: /\.png$/,
type: 'asset',
parser: {
dataUrlCondition: {
maxSize: 4 * 1024 // 4kb
}
}
}
]
},
plugins: [
new HtmlWebpackPlugin(),
],
};
ให้เชื่อมต่อรูปภาพหลายๆ รูปที่มีขนาดต่างกัน ไปยัง entry point ตรวจสอบว่า การแปลงประเภทใดถูกนำไปใช้ กับรูปภาพแต่ละรูป