vue.js - Vue.js v-for 和 v-model
问题描述
错误:'v-model' 指令无法更新迭代变量 'msg' 本身 vue/valid-v-model
<div v-for="(msg,name) in normal" :key="name">
<input type="text" v-model="msg">
</div>
<script>
export default{
data(){
normal: {
position: "bottom",
message: "",
open: false,
timeout: 1500,
}}}
</script>
解决方案
您需要直接从数据中编辑数组/对象变量。在“for”循环中访问“msg”时,您只会获得项目值的副本,而不是对对象/数组项目的引用。
正确的用法是:
<div v-for="(msg, name) in normal" :key="name">
<input type="text" v-model="normal[name]">
</div>
推荐阅读
- reactjs - 在 Google 的 Place Autocomplete Address api 中获取 Cors 政策错误
- android - 无法检测到实时检查服务。要启用实时检查,请重新启动设备
- networking - 网桥调制解调器无法在 IP 范围内设置 IP
- javascript - 如果它与id匹配,如何在对象数组内的对象中添加一个属性
- mongodb - MongoDB:查找任何字段是否为真
- javascript - 如何获得具有相同类名的不同项目位置?
- graphql - 在 Apollo Client 字段策略合并功能中访问缓存值
- javascript - 如何确定 Node.js HTTPS 请求错误是由缺少主机还是缺少代理引起的?
- html - 为什么内联块 Div 的行为与内联块按钮不同?
- c++ - 可执行的 C++ 文件不断关闭,甚至不显示生成的产品