vue中img src 动态加载本地json的图片路径写法

Vue中,我们使用img标签来展示图片,其中src属性用于指定图片的路径。如果需要动态加载本地json中的图片,我们可以使用相对路径来指定图片的位置。

具体操作步骤如下:

  1. 创建一个包含图片路径的json文件。比如说在项目根目录下新建一个名为“images.json”的文件,其内容为:
{
  "imgPath": "./assets/images/demo.png"
}
  1. 在Vue组件中引入json文件并保存。比如说在main.js中引入:
import images from './images.json'
Vue.prototype.$images = images
  1. 在Vue组件中使用img标签来展示图片,并指定src属性为json文件中存放图片路径的键名:
<template>
  <div>
    <img :src="$images.imgPath" alt="demo image">
  </div>
</template>

此时图片“demo.png”就会在网页中展示出来。

下面是两个完整的例子说明:

  1. 首先,创建一个包含图片路径的json文件“images.json”:
{
  "imgPath": "./assets/images/demo.png"
}
  1. 在Vue组件中引入json文件并保存。比如说在main.js中引入:
import images from './images.json'
Vue.prototype.$images = images
  1. 在Vue组件中使用img标签来展示图片,并指定src属性为json文件中存放图片路径的键名:
<template>
  <div>
    <img :src="$images.imgPath" alt="demo image">
  </div>
</template>

此时图片“demo.png”就会在网页中展示出来。

  1. 再举一个例子,如果我们希望在json文件中存放多张图片的路径,并且可以通过点击某个按钮来进行切换展示的图片,可以采用如下的方法:

首先,创建一个包含多张图片路径的json文件“images.json”:

{
  "imgList": [
       { "path": "./assets/images/demo1.png" },
       { "path": "./assets/images/demo2.png" },
       { "path": "./assets/images/demo3.png" }
   ]
}

在Vue组件中引入json文件并保存。比如说在main.js中引入:

import images from './images.json'
Vue.prototype.$images = images

在Vue组件中使用img标签来展示图片,并使用Vue的计算属性来动态切换图片路径:

<template>
  <div>
    <button @click="changeImage">切换图片</button>
    <img :src="currentImg" alt="demo image">
  </div>
</template>

<script>
export default {
  data () {
    return {
      index: 0
    }
  },
  computed: {
    currentImg () {
      return this.$images.imgList[this.index].path
    }
  },
  methods: {
    changeImage () {
      this.index++
      if (this.index === this.$images.imgList.length) {
        this.index = 0
      }
    }
  }
}
</script>

此时,点击“切换图片”按钮,就可以动态切换多张图片的路径。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:vue中img src 动态加载本地json的图片路径写法 - Python技术站

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

相关文章

  • Vue中简单的虚拟DOM是什么样

    下面我将详细讲解Vue中简单的虚拟DOM及其特点和应用。 什么是Vue中的虚拟DOM 在Vue中,将真实的DOM和虚拟的DOM都当作了节点来操作。它们的区别在于,真实的DOM节点可以直接在浏览器中渲染,而虚拟DOM节点是在内存中以对象的形式存在,有助于减少频繁的页面操作。 Vue中的虚拟DOM是一个模拟真实DOM的内存树结构,每个节点对应一个真实DOM节点,…

    Vue 2023年5月27日
    00
  • 深入浅析vue组件间事件传递

    深入浅析 Vue 组件间事件传递 在 Vue 应用程序中,组件是相互独立的,但有时需要从一个组件向另一个组件传递数据或触发事件。在这种情况下,Vue 允许通过事件传递数据和在组件之间通信。 父子组件之间的事件传递 父子组件之间的事件传递是最简单和最常见的一种情况。Vue 组件中,子组件需要把数据传递给父组件的时候,它可以通过 emit 事件的方式来触发父组件…

    Vue 2023年5月27日
    00
  • vue实现自定义H5视频播放器的方法步骤

    下面我将详细讲解如何使用Vue实现自定义H5视频播放器。 1. 安装视频播放器组件库 首先,需要安装Vue的视频播放器组件库,常用的有video.js和vue-video-player。这里以vue-video-player为例进行讲解,可在Vue项目中通过以下命令进行安装: npm install vue-video-player –save 2. 导入…

    Vue 2023年5月28日
    00
  • vue watch自动检测数据变化实时渲染的方法

    当Vue实例中的数据发生变化时,自动重新渲染视图是Vue响应式系统中最强大的功能之一。Vue提供了一种名为“watch”的特性,允许我们监测数据变化,当数据发生变化时,执行相应的回调函数。这个特性非常适用于处理异步操作、表单输入以及任何需要在特定数据变化时执行特定操作的情况。 以下是vue watch自动检测数据变化实时渲染的方法的完整攻略: 1. 创建一个…

    Vue 2023年5月29日
    00
  • 如何理解Vue的render函数的具体用法

    Vue的render函数是Vue的核心功能之一,它可以帮助我们实现更强大和自由度更高的组件化。如果你能够掌握Vue的render函数的具体用法,可以针对项目需求定制化你的组件,从而更好地实现业务需求。 以下是如何理解Vue的render函数的具体用法的完整攻略: 什么是Vue的render函数 Vue的render函数是一个高阶函数,它用来描述一个Vue组件…

    Vue 2023年5月27日
    00
  • 关于vue src路径动态拼接的小知识

    首先我们需要了解一下Vue中app的文件结构。在默认情况下,我们会在src目录下创建一个main.js的文件作为vue应用的入口文件。 在Vue中,我们可以使用相对路径引入我们的组件等资源,如: import App from "./components/App.vue"; 但是,由于在不同的环境下,我们的文件路径可能会发生变化,所以我们…

    Vue 2023年5月27日
    00
  • vscode中的vue项目报错Property ‘xxx‘ does not exist on type ‘CombinedVueInstance<{ readyOnly…Vetur(2339)

    在Vscode中开发Vue项目时,可能会遇到如下错误提示:Property ‘xxx’ does not exist on type ‘CombinedVueInstance<{ readyOnly: false; }, {}, {}, {}, Readonly<Record<…”,这种错误提示一般是类型检查导致的。 解决该问题的方法如下:…

    Vue 2023年5月27日
    00
  • vue中datepicker的使用教程实例代码详解

    以下是详细讲解 “vue中datepicker的使用教程实例代码详解” 的攻略: 一、前言 在Vue项目中,我们经常需要使用到日期选择器。datepicker插件是一个轻量级的日期选择器,可以支持Vue框架,十分适合我们的需求。那么本文就来详细介绍一下Vue中datepicker的使用教程。 二、安装 我们可以使用npm来安装datepicker插件,命令如…

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