之前一直以为是vue响应原理的问题去做$set,后面发现方法1可以很好地解决
方法2的话用于未定义添加改动属性的行为

1:vue data中写一次这个el-select 的绑定的属性在这里插入图片描述

在这里插入图片描述
绑定声明

<- - - - - - - - - - - - - - – - - - - - - - - - - - - - – - - - - - - - - - - - - - – - - - - - - - - - - - - - ->

2:使用vue $set进行更新(监听更新)

“当你把一个普通的 JavaScript 对象传给 Vue 实例的 data 选项,Vue 将遍历此对象所有的属性,并使用 Object.defineProperty 把这些属性全部转为 getter/setter。Object.defineProperty 是 ES5 中一个无法 shim 的特性,这也就是为什么 Vue 不支持 IE8 以及更低版本浏览器。”

eg:this.$set(this.someObject,‘b’,2)

<- - - - - - - - - - - - - - – - - - - - - - - - - - - - – - - - - - - - - - - - - - – - - - - - - - - - - - - - ->

3:仔细检查是否该数据被你哪一步给制空了

<- - - - - - - - - - - - - - – - - - - - - - - - - - - - – - - - - - - - - - - - - - – - - - - - - - - - - - - - ->

4:仔细检查是否该数据格式

在这里插入图片描述
这边 v-model 绑定的值是一个字符串,而获取的secondaryIndustriesArr里的id却是数值型,所以也要注意数据格式可以避免很多问题
<- - - - - - - - - - - - - - – - - - - - - - - - - - - - – - - - - - - - - - - - - - – - - - - - - - - - - - - - ->

总结:
vue+ele总是有很多坑,一步步追踪数据的来龙去脉很重要呀
清醒的大脑远比比麻木的敲击来的重要
漫漫长路加油

Logo

前往低代码交流专区

更多推荐