vue.js - Vue.js 问题:道具不会改变图像 v-bind:src
问题描述
我一直在尝试将一个道具传递给一个组件,该组件是一个图像的 URL,供 Section 组件更新v-bind:src
domimg
标签,但不知何故,图像没有显示出来。
我看不出有什么问题。
文件:App.vue
<template>
<div id="app">
<Section img="../assets/linux.png" />
</div>
</template>
<script>
import Section from "./components/Section.vue";
export default {
name: "app",
components: {
Section
}
};
</script>
文件:Section.vue
<template>
<div>
<img :src="img" />
</div>
</template>
<script>
export default {
props: {
img: String
}
};
</script>
解决方案
我怀疑问题是由于您使用的相对路径造成的。我假设它解析为关于../assets/linux.png
的正确图像 URL ,但它实际上需要解析为关于您的组件的正确图像。 App.vue
<Section>
根据我从您共享的代码中可以看出的情况,您似乎可以通过App.vue
如下更新来解决此问题:
<template>
<div id="app">
<Section img="../../assets/linux.png" />
</div>
</template>
...
但是,我应该指出,将图像源作为这样的道具传递绝对没有任何好处。由于它未绑定到 中的反应性数据属性App.vue
,因此您也可以完全省略该道具。
推荐阅读
- express - 如何解决 SyntaxError:ExpressJS (ejs) 文件编译过程中出现的意外标识符问题?
- python - 熊猫将字符串列转换为布尔值
- javascript - 如何使一行内的所有图像大小相等?
- jquery - 自动幻灯片故障
- c - 从 linux 中的一个图像更新创建电影
- android - calendarview 过去日期颜色
- snmp - 向 snmpwalk 添加额外参数并在代理端接收?
- javascript - 如何使用同一数据库中另一个集合的数据创建 mongoDB 集合
- html - 寻找将实时数据转化为在线图表的指导和方向
- c# - 如果我实现 IEnumerable,Unity3D 将挂起
在一个对象上,然后使用 JsonConvert.SerializeObject()