【发布时间】:2021-12-29 12:24:07
【问题描述】:
在这件事上 Vue 和 js 真的很新,很可能我错过了一个基本的基本问题,但我试图在我的数组中切换单独点击的图像类,而不是同时切换所有图像类。
模板:
<div class="collage-banner">
<img
v-for="image in images"
@click="imgSelected()"
:alt="image.alt"
class="collage"
:class="image.class"
:src="image.url"
:key="image"
/>
js:
export default {
data() {
return {
images: [
{ url: img1, class: "img-1", alt: "collage img" },
{ url: img2, class: "img-2", alt: "collage img" },
{ url: img3, class: "img-3", alt: "collage img" },
{ url: img4, class: "img-4", alt: "collage img" },
{ url: img5, class: "img-5", alt: "collage img" },
{ url: img6, class: "img-6", alt: "collage img" },
{ url: img7, class: "img-7", alt: "collage img" },
{ url: img8, class: "img-8", alt: "collage img" }
]
}
},
methods: {
imgSelected() {
if (this.images[0].url === img1) {
this.images[0].class = 'collage-click'
} else if (this.images[0].url === img2) {
this.images[0].class = 'img-1'
}
if (this.images[1].url === img2) {
this.images[1].class = 'collage-click'
} else if (this.images[1].url === img1) {
this.images[1].class = 'img-2'
}
}
}
}
如果需要更多信息,请告诉我,我很可能以完全错误的方式解决了这个问题!提前致谢!
【问题讨论】:
-
您要设置点击处理程序吗?你能确认你正在关注这个vuejs.org/v2/guide/events.html#Method-Event-Handlers
-
嗨,是的,我想设置一个点击处理程序,所以如果我点击(例如)第二张图片,只有第二张图片会改变它的类
标签: javascript arrays vue.js click v-for