1. 使用Webpack配置图片处理
1.1 安装图片处理插件
npm install file-loader url-loader --save-dev
1.2 配置Webpack
在webpack.config.js
中配置相应的loader:
module.exports = {
// ...其他配置
module: {
rules: [
{
test: /\.(png|jpe?g|gif|svg)(\?.*)?$/,
type: 'asset/resource',
generator: {
filename: 'images/[name].[hash:8][ext]'
}
}
]
}
// ...其他配置
};
2. 使用CDN加速图片加载
2.1 配置CDN
在项目的公共配置文件中(如vue.config.js
),配置CDN:
module.exports = {
// ...其他配置
configureWebpack: {
output: {
publicPath: 'https://cdn.example.com/'
}
}
// ...其他配置
};
2.2 修改图片引用路径
<img src="https://cdn.example.com/images/logo.png" alt="Logo">
3. 使用图片压缩工具
3.1 使用在线工具
3.2 使用Webpack插件
npm install image-webpack-loader --save-dev
在webpack.config.js
中配置:
module.exports = {
// ...其他配置
module: {
rules: [
{
test: /\.(png|jpe?g|gif|svg)(\?.*)?$/,
use: [
{
loader: 'image-webpack-loader',
options: {
mozjpeg: {
progressive: true,
quality: 65
},
// ...其他配置
}
}
]
}
]
}
// ...其他配置
};
4. 使用懒加载
4.1 使用Vue的指令
<img v-lazy="imageSrc" alt="Description">
4.2 使用第三方库
如果你不希望使用Vue指令,可以使用第三方库如vue-lazyload
。
npm install vue-lazyload --save
在Vue实例中配置:
import Vue from 'vue';
import VueLazyload from 'vue-lazyload';
Vue.use(VueLazyload);