【cascader出现的报错】Error in callback for watcher “options“: “TypeError: Cannot read properties of null

该博客介绍了在使用Vue的动态Cascader组件时遇到的问题,即在切换数据源时发生错误。解决方案是通过添加v-if或key属性来强制组件重新渲染。一种方法是在el-cascader上添加:key属性并监听options变化时更新key值;另一种是在v-for循环中给最外层div绑定key,确保每次数据源变更时组件能够正确重绘。
摘要由CSDN通过智能技术生成

在这里插入图片描述

动态cascader级联选择器

动态cascader级联选择器,发现切换数据源的时候报错,网上看到这个文章完美解决https://blog.csdn.net/weixin_43043994/article/details/100303097

问题怎么出现的上面文章写的很清楚,解决方法就是重新加载组件。两个方法一个加v-if,一个加key

<el-cascader
 	:key="keyValue"  //keyValue在data中定义,初始值为0
  	clearable
    :props="propsObj"
    v-model="value"
   :options="options"
>
</el-cascader>
watch: {
  options(newVal) {
    this.keyValue++ //只要监听到数据源发生变化 ,改变keyValue的值,达到重新渲染的效果
  }
},

还有另一个是这样做的
我这里要循环产生多个cascader,然后最外层的div绑定了key,这样也没报错

<div v-for="(item, index) in filterProductAttrList" :key="index" style="margin-bottom: 10px;">
  <el-cascader
    clearable
    :props="propsObj"
    v-model="item.value"
    :options="cascaderOptions"
  >
  </el-cascader>
</div>
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值