forms - 带有 V-For 的动态 V 模型
问题描述
我的问题是如何使用正确的索引动态绑定
旧代码单击上方的 CODEPEN 链接 旧代码单击上方的 CODEPEN 链接
<template>
<div>
<ul class="filters">
<form action>
<li v-for="(filter , index ) in filters " :key="filter.id">
{{index}}
<label for="filters">{{filter.title }} ({{filter.count}})</label>
<input
type="text"
name="filters"
:id="index+filter.title"
:placeholder="filter.title"
v-model="choosenFilters[0][index]"
/>
<input
type="checkbox"
name="filters"
:id="filter.title"
:value="filter.title"
v-model="choosenFilters[0][index]"
/>
</li>
</form>
</ul>
</div>
</template>
旧代码单击上方的 CODEPEN 链接 旧代码单击上方的 CODEPEN 链接
<script>
export default {
name: "FilterConfigurationPanel",
data() {
return {
checked: false,
choosenFilters:{
name:'',
label:'',
checked:'',
},
shown: null,
};
},
created() {
this.$store.dispatch("filtersAPi");
},
computed: {
...mapState(["filters"]),
},
};
</script>
解决方案
您可以使用相同的persons
对象数组来包含新的电子邮件 ID,而不是使用 2 个不同的数组。persons
为名为newEmail
and的数组中的每个对象添加 2 个新属性checked
。然后就可以使用同一个对象来显示
<li v-for="(person, index ) in persons" :key="person.id">
{{person.email}}
<input type="text" name="filters" v-model="person.newEmail" />
<input type="checkbox" name="filters" v-model="person.checked" />
通过这种方式,您可以跟踪id
以及oldEmail
推荐阅读
- github - 致命:无法从远程存储库 Laravel Forge 读取
- jdbc - redshift/postgresql 中的 regexp_count 不支持设置模式值的动态参数
- python - 使用 MultibodyPlant,为什么我会得到 `SolveQuadraticForTheSmallestPositiveRoot(): condition 'Delta > 0' failed`?
- mongodb - Gatsby 是否支持 MongoDB 关系?
- php - RewriteRule url 后无法获取参数
- javascript - 在 ajax 无限加载脚本上出现 403 错误
- rust - 在 C++ 的`std::cin >>` 的 Rust 模拟中,我缺少什么极端情况?
- java - 如何将下拉值发送到 servlet 而不是选项文本
- c++ - CMake:尝试在 Jenkins Build Machine 上运行时出现“链接库”错误 (0xc0000135)
- python - 尝试在 Python 中对字典的值进行四舍五入