浅谈在vue-cli3项目中解决动态引入图片img404的问题

yizhihongxing

首先,出现图片404错误的原因可能有多种,但在vue-cli3项目中常见的错误是因为在引入图片时直接使用了相对路径而导致的。

解决这个问题的方法是使用require语法,在vue组件中通过require引入图片文件,再通过绑定v-bind:src动态绑定图片的路径,即可避免出现404错误。

具体的步骤如下:

  1. 下载并安装file-loader

在项目中使用require语法需要依赖file-loader,并将图片打包成base64格式嵌入到代码中。通过npm安装file-loader:

npm install file-loader --save-dev
  1. 在vue.config.js中配置file-loader

为file-loader配置公共路径publicPath和打包文件的存放路径outputPath。

示例代码:

module.exports = {
  // 公共路径
  publicPath: '/',
  // 打包输出目录
  outputDir: 'dist',
  // file-loader配置
  chainWebpack: config => {
    config.module
      .rule('images')
      .use('url-loader')
      .loader('url-loader')
      .options({
        limit: 10240
      })
  }
}
  1. 在vue组件中使用require引入图片文件

使用require引入图片文件并将其赋值给组件中的变量。

示例代码:

<template>
  <img :src="imgUrl"/>
</template>
<script>
export default {
  data() {
    return {
      imgUrl: require('@/assets/images/11.jpg')
    }
  }
}
</script>

通过上述步骤即可成功避免在vue-cli3项目中出现图片404错误。同时,这种方法也可以在组件中使用动态绑定v-bind:src的方式来动态显示图片。

另外,如果在vue组件中不使用require语法而直接使用相对路径引入图片文件,可以在vue.config.js中为webpack配置alias,将@指定为项目根目录。示例代码:

module.exports = {
  // 公共路径
  publicPath: '/',
  // 打包输出目录
  outputDir: 'dist',
  // webpack别名配置
  configureWebpack: {
    resolve: {
      alias: {
        '@': resolve(__dirname, './src')
      }
    }
  }
}

配置完成后,就可以直接在vue组件中通过相对路径引入图片了。例如:

<template>
  <img :src="require('@/assets/images/11.jpg')"/>
</template>

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:浅谈在vue-cli3项目中解决动态引入图片img404的问题 - Python技术站

(0)
上一篇 2023年5月28日
下一篇 2023年5月28日

相关文章

  • Vue3+script setup+ts+Vite+Volar搭建项目

    下面详细讲解如何使用Vue3+script setup+ts+Vite+Volar搭建项目: 1. 安装Vite 首先需要安装最新的Vite,可以通过以下命令进行安装: npm install -g vite 2. 创建项目 Vite有一个快捷的命令可以帮助我们快速创建一个Vue3项目,只需要执行以下命令: npm init vite-app my-proj…

    Vue 2023年5月27日
    00
  • 解决vue数据不实时更新的问题(数据更改了,但数据不实时更新)

    在使用Vue开发过程中,有时候我们会遇到数据更改了,但是界面并没有实时更新的问题。这是因为Vue使用了异步更新的机制,当数据发生更改时,界面并不会立即更新,而是等到下一轮微任务执行更新。因此,我们需要采取一些措施来解决这个问题。 解决Vue数据不实时更新的问题 1. 使用Vue.$set方法 在Vue中,我们通常使用Object.defineProperty…

    Vue 2023年5月27日
    00
  • 基于vue 动态加载图片src的解决方法

    下面是完整的“基于Vue动态加载图片src的解决方法”的攻略: 1. 背景 在Vue项目中,动态加载图片很常见,但如果在组件中使用v-bind:src动态绑定图片路径,由于Vue在编译时使用“静态渲染”机制,而不是重新计算DOM操作,所以后续修改src的值并不会生效。因此需要使用其他的技巧动态加载图片。 2. 解决方法 2.1 使用require 使用 re…

    Vue 2023年5月28日
    00
  • 详解Vue使用命令行搭建单页面应用

    非常感谢您关注本网站,以下是对“详解Vue使用命令行搭建单页面应用”的完整攻略: 一、简介 Vue.js是一个流行的JavaScript框架,它使用MVVM模式来构建单页面应用程序。 而命令行是可以让我们方便地执行许多自动化任务的强大工具。接下来,我们将使用命令行来构建一个Vue.js单页面应用程序。 二、步骤 1. 安装Node.js和Vue.js 在开始…

    Vue 2023年5月28日
    00
  • Vue3使用Vuex之mapState与mapGetters详解

    当使用Vue3构建大型Web应用时,状态管理是很重要的一点。Vuex是一个非常流行的Vue.js状态管理库。而在Vue3中,使用Vuex也是非常方便的。其中,使用mapState和mapGetters是非常常见的两种方式。下面,我们详细讲解一下这两种方式的使用方法。 mapState mapState是Vuex提供的辅助函数,可以将store中的state映…

    Vue 2023年5月27日
    00
  • 解决vue3打包过后空白页面的情况

    如何解决Vue3打包后空白页面的问题? 当我们使用Vue 3构建一个应用并打包的时候,有可能会遇到打包之后页面空白的情况,这种问题可能由于多种因素引起,本文将通过实际研究,提供一些解决方案。 确定是否存在缺失的依赖包 在我们使用Vue 3构建一个应用时,通常会使用一些依赖包来实现某些功能。然而,在打包的过程中,这些依赖包也有可能被一并打包,如果在打包的过程中…

    Vue 2023年5月28日
    00
  • vue实例的选项总结

    下面我来详细讲解一下“vue实例的选项总结”的完整攻略。 一、Vue实例的选项总结 在Vue开发中,我们通常都是通过创建Vue实例的方式来进行页面渲染、响应式数据绑定以及和Vue生命周期相关的操作。而在创建Vue实例时,我们还可以通过选项来配置Vue实例,包括数据、方法、生命周期钩子等。下面就是Vue实例的所有选项及其用法。 data: 数据选项,用于定义V…

    Vue 2023年5月27日
    00
  • 面试必备的13道可以举一反三的Vue面试题

    针对“面试必备的13道可以举一反三的Vue面试题”的完整攻略,我将从以下几个方面进行详细讲解: 题目概述 重点知识点 技巧提示 题目概述 这13道可以举一反三的Vue面试题涵盖了Vue中的基础知识点、常用功能及其用法、组件开发、状态管理等多个方面,对于Vue开发工程师的面试来说是非常有参考价值的。 重点知识点 以下是这13道面试题中的重点知识点: Vue实例…

    Vue 2023年5月27日
    00
合作推广
合作推广
分享本页
返回顶部