Vue.set : setActiveImage(image) { this.imageList.forEach((imageItem, index) => { this.$set(this.imageList, index, { ...imageItem, active: false }); }); this.$set(this.imageList, this.imageList.indexOf(image), { ...image, active: true }); } 或者直接调用: setActiveImage(image) { for (const imageItem of this.imageList) { imageItem.active = false; } image.active = true; // 在这里直接调用 this.$nextTick(() => { this.dosomething(this.activeImage); }); } setActiveImage(image) { for (const imageItem of this.imageList) { imageItem.active = false; } image.active = true; // 在这里直接调用 this.$nextTick(() => { this.dosomething(this.activeImage); }); }