vue.js - v-if inside v-for not work on click button
问题描述
我试图在基于 v-if 的 v-for 中显示正确的模板。
单击按钮时应更改 v-if 中包含的值
<div v-for="(items, index) in suppliers" :key="index">
<v-btn @click="newSupplier[index].edit = true">Edit</v-btn>
<template v-if="newSupplier[index].edit">
// Display supplier information
</template>
<template v-else>
// Display edit form
</template>
<div>
newSupplier 是一个包含一些信息的对象,包括编辑供应商是一个包含(相同)供应商数量的数据属性。
代码应该触发 v-if 并显示正确的模板
解决方案
确保使用Vue.set(newSupplier, index, value)
而不是设置 newSupplier newSupplier[index]=value
。
索引可能会导致您的 newSupplier 没有反应。
推荐阅读
- css - 如何对齐此文本以使其从同一位置开始?
- java-7 - 无法在 Java 7 中启用 SNI
- css - 通过 CSS 缩放图像
- google-chrome - 在容器映像上调用 AWS Lambda 函数时出现量角器错误代码 199
- drupal-8 - Drupal 8.9.17 和 apache 2.4.44 或更高版本
- python - 如何在函数调用链python中共享变量
- java - 为什么客户端在向服务器发送对象时冻结?
- c++ - 关于创建我自己的模板化函数进行排序的问题
- reactjs - TypeError:无法添加属性数量,对象不可扩展
- php - 根据浏览器和视口自动提供最佳图像