改变了数组内的值,但是页面没有重新渲染

编程入门 行业动态 更新时间:2024-10-19 21:21:45

改变了<a href=https://www.elefans.com/category/jswz/34/1771288.html style=数组内的值,但是页面没有重新渲染"/>

改变了数组内的值,但是页面没有重新渲染

新增的时候可以展示,但是编辑在点+新增就没有效果

原因:改变了数组内的值,但是页面没有重新渲染

        <el-form-item label="信息:" required><div style="display: flex; align-items: flex-end"><div><el-form:model="form"ref="watchRef"inline:hide-required-asterisk="false"><divv-for="(item, index) in form.supervisionList":key="item.key"class="supervisionitem"><!--  :prop="'supervisionList.' + index + '.supervisionLinkman'" --><el-form-item:prop="'supervisionList.' + index + '.supervisionLinkman'":rules="{required: true,message: '请填写姓名',trigger: 'blur',}"><el-inputv-model="item.supervisionLinkman"style="width: 145px"placeholder="姓名"maxlength="10":disabled="!!id && !row.showOperation"></el-input></el-form-item><!-- prop="supervisionMobile" --><!-- {{ form.supervisionList[index].supervisionMobile }} --><!-- prop="supervisionMobile"  'supervisionList.' + index + '.supervisionMobile'--><el-form-item:prop="'supervisionList.' + index + '.supervisionMobile'":rules="supervisionMobileRules"><el-inputv-model="item.supervisionMobile"style="width: 247px"placeholder="联系电话":disabled="!!id && !row.showOperation"></el-input><spanclass="del add pointer"@click.prevent="delSupervision(item)"v-if="index > 0">-</span></el-form-item></div></el-form></div><divclass="add pointer"@click="addSupervision":style="!!id && !row.showOperation ? 'pointer-events:none;' : ''">+</div></div><!-- <el-form:model="form":rules="watchRules"ref="watchRef"inline:hide-required-asterisk="false"><el-form-item prop="supervisionLinkman"><el-inputv-model="form.supervisionLinkman"style="width: 145px"placeholder="姓名"maxlength="10":disabled="!!id && !row.showOperation"></el-input></el-form-item><el-form-item prop="supervisionMobile"><el-inputv-model="form.supervisionMobile"style="width: 247px"placeholder="联系电话":disabled="!!id && !row.showOperation"></el-input></el-form-item></el-form> --><!-- <div class="alignFlex"><el-inputv-model="form.frName"style="width:145px;margin-right:8px"placeholder="姓名"></el-input><el-inputv-model="form.frPhone"style="width:247px"placeholder="联系电话"></el-input></div> --></el-form-item>
    addSupervision() {this.form.supervisionList.push({supervisionLinkman: "",supervisionMobile: "",key: Date.now(),});this.$forceUpdate();},delSupervision(item) {console.log(item, "item");console.log(this.form.supervisionList, "this.form.supervisionList");var index = this.form.supervisionList.indexOf(item);if (index !== -1) {this.form.supervisionList.splice(index, 1);this.$forceUpdate();}},

this.$forceUpdate()强制刷新
在新增就可以展示出来

如果是在对象中添加属性修改属性this.$set(this.object,'age',21)
如果是对数组的操作:
1.数组splice方法
2.this.$forceUpdate()强制刷新
3.this.$set使用如下

      this.$set(this.form.supervisionList, this.form.supervisionList.length, {supervisionLinkman: "",supervisionMobile: "",key: Date.now(),});

但是我的好像只能用this.$forceUpdate()强制刷新,具体啥原因我也不太清楚

更多推荐

改变了数组内的值,但是页面没有重新渲染

本文发布于:2023-12-04 16:06:28,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1661474.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:数组   页面   改变了

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!