关于elementUI多选框select、穿梭框transfer等组件的v-model值

10 篇文章 0 订阅

最近在学习多选框等组件时,发现从数据库中读出的值赋给v-model,没法在框中显示 。

其实,是赋值与v-model要求数据类型不同的原因。

多选框select举例:

<template>
  <el-select v-model="value1" multiple placeholder="请选择">
    <el-option
      v-for="item in options"
      :key="item.value"
      :label="item.label"
      :value="item.value">
    </el-option>
  </el-select>
</template>
<script>
  export default {
    data() {
      return {
        options: [{
          value: '选项1',
          label: '黄金糕'
        }, {
          value: '选项2',
          label: '双皮奶'
        }, {
          value: '选项3',
          label: '蚵仔煎'
        }, {
          value: '选项4',
          label: '龙须面'
        }, {
          value: '选项5',
          label: '北京烤鸭'
        }],
        value1: []
      }
    }
  }
</script>

对于多选框来说,v-model的值是一个数组。而下拉框选项options也是一个数组,没有深究之下,我就认为v-model只是options的一个子集,从数据库中读出的数据值与options数据格式一样,但是频频报错,得不到想要的显示。

正解:其实,赋给v-model的值应该是所选的options的value值的一个数组,类似:

['选项1', '选项2', '选项3','选项4','选项5']

不求甚解之过,写于此,谨记!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值