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

yizhihongxing

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实现在线预览pdf文件和下载(pdf.js)

    首先,我们需要明确一下,在线预览和下载PDF文件需要借助于开源的PDF.js库。这个库是Mozilla基金会开发的,可以在Web上直接呈现PDF文档。 接下来,我们将学习如何使用Vue.js和PDF.js库,实现在线预览和下载PDF文件的功能。 步骤一:安装依赖 我们首先需要在Vue项目中安装pdf.js库。 在命令行输入: npm install pdfj…

    Vue 2023年5月28日
    00
  • Vue Object.defineProperty及ProxyVue实现双向数据绑定

    Vue是一款流行的JavaScript框架,它拥有与DOM相关的数据绑定能力。其中,双向数据绑定是Vue框架中最为重要的概念之一。 在Vue中,我们可以通过使用Object.defineProperty()或Proxy方法实现双向数据绑定。这两种方法的实现方式其实很类似,它们都可以通过监听数据变化来实现数据的双向绑定。 Object.defineProper…

    Vue 2023年5月28日
    00
  • Vue下的国际化处理方法

    下面我将为你详细讲解Vue下的国际化处理方法。 什么是Vue国际化 Vue国际化是指将应用程序的文本和其他可本地化内容(例如日期、时间、货币、图片、数字等)自动翻译成用户的首选语言或区域设置的过程。在Vue中,可以使用Vue-i18n插件轻松实现国际化。Vue-i18n是一种提供文本翻译和本地化方案的Vue插件。 安装Vue-i18n 在Vue项目中安装Vu…

    Vue 2023年5月28日
    00
  • 基于Vue实现微信小程序的图文编辑器

    基于Vue实现微信小程序的图文编辑器的攻略具体如下: 1. 实现思路 在实现微信小程序的图文编辑器时,我们可以将整个编辑器分解成多个组件,然后在Vue中进行组合和交互。具体步骤如下: 首先,我们需要设计编辑器的布局和样式。可以使用Flex布局和CSS样式对编辑器中的组件进行布局和样式设置。 其次,我们需要设计可编辑的组件,包括文本、图片、视频等。这些组件需要…

    Vue 2023年5月27日
    00
  • Vue路由模块化配置的完整步骤

    当使用Vue.js开发单页面应用程序时,路由管理通常是必不可少的功能之一。Vue Router是Vue.js官方提供的路由管理器,它可以轻松地集成到Vue.js应用中,并且在开发过程中为我们提供了许多有用的功能。 Vue Router支持模块化配置,我们可以将路由配置拆分为多个独立的模块,以便更好地组织和管理我们的代码。下面是Vue路由模块化配置的完整步骤:…

    Vue 2023年5月28日
    00
  • 基于vue实现多引擎搜索及关键字提示

    实现基于Vue的多引擎搜索及关键字提示主要包括以下步骤: 构建基础页面结构 在HTML文件中,构造基础的页面结构,包括搜索框和搜索按钮等必要的组件。同时,引入Vue.js库和相关依赖。 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> …

    Vue 2023年5月27日
    00
  • vue3.0 CLI – 1 – npm 安装与初始化的入门教程

    Vue3.0 CLI – 1 – npm 安装与初始化的入门教程 什么是 Vue CLI Vue CLI 是一个官方发布的 Vue.js 项目脚手架,提供了快速初始化项目、快速开发等功能,大大提高了前端开发效率。Vue CLI 内置了许多插件和功能,例如代码格式化、组件生成、调试等,同时也允许用户在创建项目时选择需要的插件和功能,定制自己的项目模版。 安装 …

    Vue 2023年5月28日
    00
  • mitt tiny-emitter发布订阅应用场景源码解析

    mitt tiny-emitter发布订阅应用场景源码解析 简介 mitt是一个基于JavaScript的简单、快速、可扩展的发布/订阅(pub/sub)库,适用于各种应用场景。它的基本思想是订阅者向一个发布者注册其感兴趣的事件类型,当该类型事件发生时,订阅者会被通知并执行其所定义的响应逻辑。这种解耦合的模式为开发者提供了良好的可维护性和扩展性。 mitt的…

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