mineadmin / MineAdmin-Vue

MineAdmin Vue 是一个开源免费专门适配于 MineAdmin 后台权限管理系统的前端中后台模板,使用了 vue3, vite5, pinia, arco design, javascript 等主流开发技术,未使用Typescript,我们选择了简单。
MIT License
322 stars 104 forks source link

[bug] 修复 columns属性中配置了formType: "select",multiple:true时,点击重置按钮报错问题修复 #214

Open AngelZero252 opened 6 hours ago

AngelZero252 commented 6 hours ago

bug描述:

columns属性中配置了multiple:true时,点击重置按钮报错

重现步骤:

{   
 title: "订单状态",
    dataIndex: "status",
    formType: "select",
    multiple:true
}

报错如图 bug_img

bug修复代码

/src/components/ma-crud/components/searchFormItem/form-select.vue 169行 判断multiple为true时,设置默认值为空数组则报错问题解决

if (props.component.multiple) {
    v = v == null ? [] : v
    if(v.length>0){
      v.forEach(k => {
        if ( !optionMap.value[k] ) {
          optionMap.value[k] = dicts.value[dictIndex].find(i => i.value === k)
        }
      })
      for(const k in optionMap.value) {
        if ( !v.includes(k) ) delete optionMap.value[k]
      }
    }
  }
kanyxmo commented 6 hours ago

好的,我 review一下