网上搜到的方法都是v-modelvalue替换
但是不适用于我的项目上,在一点一点排查之后发现是切换单双选导致的数据不回显

<el-cascader
   ref="cascaderRef"
   v-model="form.modelList"
   :options="options"
   clearable
   filterable
   placeholder="请选择"
   :props="{
     label: 'objectName',
     value: 'objectId',
     multiple: isMultiple,
   }"
   @change="handleChangeModelId"></el-cascader>

就是multiple: isMultiple这一行导致,所以就直接写两个组件用v-show去切换组件

<!-- 单选多选切换会导致回显不上数据,所以v-show切换组件 -->
 <el-cascader
  v-show="!form.type"
   ref="cascaderRef"
   v-model="form.modelList"
   :options="options"
   clearable
   filterable
   placeholder="请选择应用对象"
   :props="{
     multiple: true,
   }"
   @change="handleChangeModelId"></el-cascader>
 <el-cascader
   v-show="!!form.type"
   ref="cascaderRef"
   v-model="form.modelList"
   :options="options"
   clearable
   filterable
   placeholder="请选择应用对象"
   @change="handleChangeModelId"></el-cascader>
Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐