Javascript 变量为空时的v-bind
我使用Vue,我有一个变量。当变量有一个值时,我显示一个图像pic1 当变量没有值=空时,我显示另一个图像pic2 我的代码Javascript 变量为空时的v-bind,javascript,vue.js,vuejs2,Javascript,Vue.js,Vuejs2,我使用Vue,我有一个变量。当变量有一个值时,我显示一个图像pic1 当变量没有值=空时,我显示另一个图像pic2 我的代码 <template v-for="(item, index) in items"> <img v-if="item.var" v-bind:src="'/images/pic1'"> <img v-else v-bind:src="'/images/pic2'"> <img v-if="item.var.length >
<template v-for="(item, index) in items">
<img v-if="item.var" v-bind:src="'/images/pic1'">
<img v-else v-bind:src="'/images/pic2'">
<img v-if="item.var.length > 0" v-bind:src="'/images/pic1.jpg'">
<img v-if="item.var.length == 0" v-bind:src="'/images/pic2.jpg'">
</template>
我基本上尝试了两种独立的选择:
v-else不起作用,它只显示item.var的帖子,其他item.var为空的帖子被丢弃
使用.length-根本不起作用
如何使其工作?什么是item.var?您确定您的文件路径正确吗?路径是否需要单引号和双引号?取下其中一对。图像也有一个文件类型,例如.jpg。如果修复这些问题没有帮助,请使用require绑定图像源,例如:
您确定向v-for传递的数据正确吗 检查item.var上的迭代项
v-for should look like
v-for="(item, index) in items"
我刚刚与以下人员核实:
data() {
return {
item : {
var: [
1,2,3
]
}
}
}
我看到了莫娜
<img v-if="item.var" v-bind:src="'https://tineye.com/images/widgets/mona.jpg'">
您确实需要为图像元素设置关键帧。您的v-for也没有所需的in变量部分,这将导致编译错误。除此之外,我希望第一个选项能起作用,但在不知道item.var中的内容的情况下,我真的无法告诉您出了什么问题。你有没有试着记录你正在循环的变量,看看里面有什么?我想问题是你没有一个完整的v-for指令语句。应该是v-for=item,在items中索引或调用items数组的任何内容。否则,v-for组中的每个项都应该有一个key属性,但这不会导致初始渲染出现问题。下面是一个代码笔示例,它可能会帮助您找到正确的方向:尝试v-if=!item.var.length>0第二个选项嘿@Rju,显示您的项目列表它包含什么?