1. 使用assets文件夹

示例代码:

// 在Vue组件的模板中使用图片
<img :src="logo" />

// 在Vue组件的<script>部分引入图片
data() {
  return {
    logo: require('@/assets/logo.png')
  };
}

2. 使用Webpack的require.context

示例代码:

// 在Vue组件的模板中使用require.context动态加载图片
<img :src="loadImage('images', 'logo.png')"/>

// 在Vue组件的<script>部分定义loadImage函数
methods: {
  loadImage(directory, filename) {
    return require(`@/assets/${directory}/${filename}`);
  }
}

3. 使用~语法

在Vue单文件组件中,你可以使用~语法来引用src/assets目录下的资源。

示例代码:

<!-- 在Vue组件的模板中使用~语法引用图片 -->
<img :src="~@/assets/logo.png" />

4. 利用Webpack的别名配置

vue.config.js中,你可以为常见的路径设置别名,这样就可以通过简短的路径来引用资源。

示例代码:

// 在vue.config.js中设置别名
module.exports = {
  configureWebpack: {
    resolve: {
      alias: {
        '@assets': '@/assets'
      }
    }
  }
};

// 在Vue组件中使用别名
<img :src="require('@/assets/logo.png')" />

5. 检查文件名的大小写

总结