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);

总结