• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
专注于技术,专注于生活
这样才是程序员的生命
博客园    首页    新随笔    联系   管理    订阅  订阅

Vue——el-option下拉框绑定,value为数字和字符串区别

Vue——el-option下拉框绑定

1、正常使用v-for 进行遍历 下拉框内容,如果需要增加一个自定义的值,则加一个el-option

el-option用法:

参数

说明

类型

可选值

默认值

value

选项的值

string/number/object

—

—

label

选项的标签,若不设置则默认与

value

相同

string/number

—

—

disabled

是否禁用该选项

boolean

—

false

在日常使用el-select 中,新增一条option 如果value对应到值是string则 不影响前端显示

<el-option key="6" label="苏州大闸蟹" value="6" />
 

 遇到下拉框不显示label值,如果绑定的vaule 是number,则需要前面加上: 不然会匹配不到,String不加:没问题

具体v-bind 用法:

<el-option key="6" label="苏州大闸蟹" :value="6" />
 

demo如下:

<template>
  <div>
    <el-button @click="printSelect">调试</el-button>
    //value1 的类型 需要跟:value="item.value" 一样
    <el-select ref="selectValue1" v-model="value1" filterable placeholder="请选择">
      <el-option
        v-for="item in options1"
        :key="item.value"
        :label="item.label"
        :value="item.value"
      />
      //vaule1 为string 则 value="选项6" 前面可以不用加:即v-bind 数据绑定
      <el-option key="选项6" label="扬州炒饭" value="选项6" />
    </el-select>
    <el-select ref="selectValue2" v-model="value2" no-match-text filterable placeholder="请选择">
      //value2为number 前面需要:
      <el-option key="5" label="扬州炒饭" :value="5" />
      <el-option key="6" label="苏州大闸蟹" :value="6" />
    </el-select>
  </div>
</template>
 

js如下:printSelect方法 测试 页面显示 和 选中之后 数据类型 和值

<script>
export default {
  data() {
    return {
      options1: [{
        value: '选项1',
        label: '黄金糕'
      }, {
        value: '选项2',
        label: '双皮奶'
      }, {
        value: '选项3',
        label: '蚵仔煎'
      }, {
        value: '选项4',
        label: '龙须面'
      }, {
        value: '选项5',
        label: '北京烤鸭'
      }],
      value1: '选项1',
      value2: ''
    }
  },
  created() {
    //修改value1 value2 值,查看页面是否匹配到label
    this.getValue()
  },
  methods: {
    printSelect: function() {
        //打印选中到 类型 值 和label值
      console.log(typeof this.value1 + '-' + this.value1 + '-' + this.$refs.selectValue1.selected.label)
      console.log(typeof this.value2 + '-' + this.value2 + '-' + this.$refs.selectValue2.selected.label)
    },
    getValue: function() {
      this.value1 = '选项2'
      this.value2 = 5
    }
  }
}
</script>
 
posted @ 2024-08-19 14:20  錒飛  阅读(1596)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3