vue之elementUi的el-select同时获取value和label的三种方式

让我们来详细讲解一下“Vue之Element UI的el-select同时获取value和label的三种方式”的完整攻略。

介绍

在 Vue 中使用 Element UI 的 el-select 组件时,有时候我们需要同时获取到选中的 value 和 label 值,这时候就需要用到一些技巧来实现这个需求。在本文中,我将为大家介绍三种方式来同时获取 el-select 的 value 和 label 值。

方式一:利用 el-select 的 option 的 label、value 属性

代码示例:

<el-select v-model="selectedOption">
  <el-option label="label1" value="value1"></el-option>
  <el-option label="label2" value="value2"></el-option>
</el-select>

<script>
export default {
  data() {
    return {
      selectedOption: { label: '', value: '' }
    }
  },
  watch: {
    selectedOption: function(newVal) {
      console.log(newVal.label, newVal.value);
    }
  }
}
</script>

在这个示例中,我们使用了 el-select 的 v-model 属性来绑定选中的值到组件的 selectedOption 变量上。同时我们使用 watch 监听 selectedOption 变量的变化,实现了选中值的打印输出。当然,我们需要在 option 标签中加上 label 和 value 的属性。

方式二:利用 el-select 的 @change 事件和 ref 属性

代码示例:

<el-select ref="select" @change="handleSelectChange">
  <el-option label="label1" value="value1"></el-option>
  <el-option label="label2" value="value2"></el-option>
</el-select>

<script>
export default {
  methods: {
    handleSelectChange() {
      const selectedOption = this.$refs.select && this.$refs.select.selectedOptions[0];
      if (selectedOption) {
        console.log(selectedOption.label, selectedOption.value);
      }
    }
  }
}
</script>

在这个示例中,我们利用了 el-select 的 @change 事件来监听选中值的变化。同时,我们给 el-select 标签加上 ref 属性,使得我们可以通过 this.$refs.select 来获取到 el-select 组件,然后通过 selectedOptions[0] 获取到选中的 option 组件,并从中获取到 label 和 value 值。

方式三:利用 el-select 的 filterable 和 filter-method 属性

代码示例:

<el-select v-model="selectedOption" :filterable="true" :filter-method="filterMethod">
  <el-option label="label1" value="value1"></el-option>
  <el-option label="label2" value="value2"></el-option>
</el-select>

<script>
export default {
  data() {
    return {
      selectedOption: { label: '', value: '' }
    }
  },
  methods: {
    filterMethod(query, option) {
      return option.label.includes(query) || option.value.includes(query);
    }
  },
  watch: {
    selectedOption: function(newVal) {
      console.log(newVal.label, newVal.value);
    }
  }
}
</script>

在这个示例中,我们利用了 el-select 的 filterable 和 filter-method 属性来监听选中值的变化。filterable 属性开启了搜索框,filter-method 定义了搜索规则。我们同样使用了 el-select 的 v-model 属性来绑定选中的值到组件的 selectedOption 变量上,并监听了 selectedOption 变量的变化,实现了选中值的打印输出。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:vue之elementUi的el-select同时获取value和label的三种方式 - Python技术站

(0)
上一篇 2023年5月27日
下一篇 2023年5月27日

相关文章

  • 使用Vue3+ts 开发ProTable源码教程示例

    使用Vue3+ts开发ProTable源码,需要先了解Vue3、TypeScript和ProTable的相关知识。以下是开发教程及示例。 1. 安装ProTable 首先需要安装ProTable,在命令行中执行: npm install @ant-design-vue/pro-table –save 2. 搭建Vue3项目 使用Vue CLI创建Vue3项…

    Vue 2023年5月28日
    00
  • vue.js基于v-for实现批量渲染 Json数组对象列表数据示例

    下面是针对题目的详细讲解: 什么是vue.js Vue.js是一个构建用户界面的渐进式框架,它使得构建大型的单页面应用程序变得更加容易。 在Vue.js中,我们可以使用它的指令和模板语法轻松地渲染数据,从而实现与数据绑定的动态效果。 什么是v-for指令 Vue.js提供了v-for指令,它可以用于渲染列表或者数组数据。我们可以将其应用到一个HTML元素上,…

    Vue 2023年5月27日
    00
  • Vue中watch和methods两种属性的作用

    当开发Vue应用时,经常需要对数据进行监听和操作,Vue提供了两个可以用来处理这些需求的属性:watch和methods。 watch属性的作用 watch属性可以用来监听数据变化,当监听到指定的数据发生变化时,会自动执行对应的回调函数。watch属性非常适合用来实现数据监听和异步操作。 具体来说,当watch监听到指定的数据发生变化时,会执行指定的回调函数…

    Vue 2023年5月28日
    00
  • vue中elementUI里面一些插件的使用

    下面我来详细讲解vue中elementUI里面一些插件的使用的攻略。 1. 环境配置 在进行elementUI插件的使用之前,需要先配置Vue项目的环境以便引入elementUI依赖。具体流程如下:1. 在命令行中进入Vue项目所在的根目录,输入npm i element-ui -S安装elementUI依赖包。2. 在项目的main.js中引入elemen…

    Vue 2023年5月28日
    00
  • vue2.0使用Sortable.js实现的拖拽功能示例

    实现拖拽功能是现代Web应用中常见的需求之一,而Vue.js是目前最受欢迎的JavaScript框架之一。在Vue.js中,我们可以使用第三方库Sortable.js来完成拖拽功能的实现。 下面是实现“vue2.0使用Sortable.js实现的拖拽功能示例”的攻略: 准备工作 使用Vue CLI创建一个新的Vue.js项目。 bash vue create…

    Vue 2023年5月29日
    00
  • webpack构建vue项目的详细教程(配置篇)

    下面是“webpack构建vue项目的详细教程(配置篇)”的完整攻略: 1. 安装webpack和相关插件 在开始配置webpack之前,需要先安装一些必要的包。可以使用npm进行安装: npm install webpack webpack-cli webpack-dev-server –save-dev 安装webpack、webpack-cli和we…

    Vue 2023年5月27日
    00
  • vue2.0$nextTick监听数据渲染完成之后的回调函数方法

    Vue.js 2.0中提供了 $nextTick 方法来在 DOM 更新完成之后执行回调函数。这个方法可以用来解决在特定情况下数据渲染后无法获取到更新后的DOM元素的问题。 方法原理 在 Vue.js 中,数据渲染是异步的。当我们修改了数据后,Vue.js 会在下一个 tick 中更新实例,更新完成后才会执行回调函数。$nextTick 方法就是用来等待数据…

    Vue 2023年5月28日
    00
  • vue整合项目中百度API示例详解

    下面是“Vue整合项目中百度API示例详解”的完整攻略。 1. 前置条件 在使用百度API之前,需要去百度地图开放平台创建应用,并获取到对应的AK(Access Key)。 2. 引入百度地图API 为了使用百度地图API,我们需要先在项目中引入相应的JS文件。以下是示例代码: <!– 引入百度地图API –> <script type…

    Vue 2023年5月27日
    00
合作推广
合作推广
分享本页
返回顶部