【问题标题】:VUEJS i want import image file directly in variableVUEJS我想直接在变量中导入图像文件
【发布时间】:2020-07-07 14:50:47
【问题描述】:

我想将特定链接中的图像文件导入我的 vue 变量,有人可以帮我吗 我尝试了 required 但它不起作用this.imagefile = require(linkofimage) 有人知道怎么解决吗

【问题讨论】:

  • 不,我想直接在变量中导入图像文件
  • 你是指实际的图片内容吗?你想在这里做什么?
  • 是的,我想获得实际的图像内容,我想获得实际的图像内容,我将其转换为 base 64

标签: javascript image vuejs2


【解决方案1】:

我建议您首先将图像作为常量导入,然后在钩子或方法中将它们分配给您的 vue 数据属性:

<template>
  <div>
    <img :src="imageDirect" alt="alert">
    <img :src="imageOnHook" alt="alert">
    <img :src="imageOnMethod" alt="alert">
    <img :src="imageRequire" alt="alert">
  </div>
</template>

<script>
const image = require('@/assets/alert_logo_card.png')
export default {
  data: () => ({
    imageDirect: image,
    imageOnHook: null,
    imageOnMethod: null,
    imageRequire: null,
  }),
  mounted() {
    this.imageOnHook = image
    this.imageRequire = require('@/assets/alert_logo_card.png')
    this.assignImage()
  },
  methods: {
    assignImage() {
      this.imageOnMethod = this.imageDirect
    }
  }
}
</script>

我使用相同的图像只是为了举例。

类似的方法也可以:

methods: {
  assignImage() {
    this.imageOnMethod = this.imageDirect
  }
}

显示来自网络的图像:

<template>
  <div>
    <img :src="imageFromUrl" alt="alert" width="200" height="200">
  </div>
</template>
<script>
export default {
  data: () => ({
    imageFromUrl: null
  }),
  mounted() {
    setTimeout(() => {
      this.requestImage()
    }, 2000);
  },
  methods: {
    requestImage() {
      const responseFromNetwork = 'https://upload.wikimedia.org/wikipedia/commons/thumb/1/12/Google_Photos_icon_%282020%29.svg/1024px-Google_Photos_icon_%282020%29.svg.png'
      this.imageFromUrl = responseFromNetwork
    }
  }
}
</script>

【讨论】:

  • 我从动态链接中检索图像,所以我不能在 const 中使用数据变量
  • 是本地环境中存储的图片还是网络资产?
  • 检查最后一个代码,我使用 responseFromNetwork 作为某种 http 响应
  • 先生,我想要 但我想直接从 vuejs 的脚本端获取图像文件
猜你喜欢
  • 1970-01-01
  • 2018-05-30
  • 1970-01-01
  • 2019-05-23
  • 1970-01-01
  • 2012-08-26
  • 1970-01-01
  • 2023-03-11
  • 1970-01-01
相关资源
最近更新 更多