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日

相关文章

  • Vue CLI3创建项目部署到Tomcat 使用ngrok映射到外网

    下面是Vue CLI 3创建项目部署到Tomcat并使用ngrok映射到外网的完整攻略。 准备工作 首先,需要确保安装了以下软件:Node.js、Vue CLI 3、Tomcat和ngrok。如果没有安装,可以按照以下步骤安装: 安装Node.js:在官网下载对应系统的安装包,进行安装; 安装Vue CLI 3:在命令行中输入 npm install -g …

    Vue 2023年5月28日
    00
  • vue基于Element构建自定义树的示例代码

    下面是针对“vue基于Element构建自定义树的示例代码”的完整攻略,希望能够帮到你: 步骤一:安装Element依赖 首先,在使用Element构建自定义树之前,需要先安装Element组件库。可以通过npm或yarn来完成安装: npm i element-ui -S 或者 yarn add element-ui 步骤二:引入Element 在Vue项…

    Vue 2023年5月28日
    00
  • 配置vue全局方法的两种方式实例

    当我们在使用 Vue.js 开发时,我们经常需要在多个组件中使用同一个方法,这时候可以将这个方法作为全局方法。Vue.js 提供了两种方式来配置全局方法。 1.通过 Vue.prototype 实现全局方法 在 Vue.js 初始化时可以通过 Vue.prototype 给 Vue 实例添加自定义属性。通过 Object.defineProperty 实现这…

    Vue 2023年5月28日
    00
  • vue实现五子棋游戏

    实现五子棋游戏可以通过Vue框架实现。下面是实现五子棋游戏的流程: 初始化项目 首先,创建一个新的Vue项目,并安装项目所需要的依赖。安装依赖后进行如下配置,将vue.config.js文件的publicPath属性设置为空字符串。 module.exports = { publicPath: ” } 创建五子棋游戏界面 创建五子棋游戏所需要的界面,包括棋…

    Vue 2023年5月29日
    00
  • 详解vue与后端数据交互(ajax):vue-resource

    下面是“详解vue与后端数据交互(ajax):vue-resource”的完整攻略,包含以下几个部分: 概述 安装vue-resource 使用示例1:GET请求 使用示例2:POST请求 5.参考链接 1. 概述 Vue.js是一款轻量级、高效的渐进式JavaScript框架,可以用于构建 Web 界面和单页应用程序。而vue-resource是Vue.j…

    Vue 2023年5月28日
    00
  • vue.js中$watch的用法示例

    下面是关于”vue.js中$watch的用法示例”的完整攻略: 1. 什么是$watch 在Vue.js中,我们经常需要使用到响应式数据,$watch是Vue.js提供的一个侦听器,用来监听某个数据项的变化,一旦该数据项发生变化,$watch负责触发回调函数,执行相应的操作。 2. $watch的基本用法 在Vue.js中,我们可以使用vm.$watch方法…

    Vue 2023年5月27日
    00
  • Vue 项目中遇到的跨域问题及解决方法(后台php)

    下面给出解决Vue项目中跨域问题的攻略。 1. 跨域问题的背景 在Vue项目中,由于前端代码和后端接口的部署位置不同,涉及到跨域访问的问题。如果没有任何处理,就会出现浏览器的同源策略限制,无法访问到后端接口。因此,需要对跨域问题进行处理。 2. 解决跨域问题的方法 2.1. 后端设置允许跨域访问 后端通过设置http响应头的内容,告知浏览器允许Vue项目的跨…

    Vue 2023年5月28日
    00
  • Vue发布项目实例讲解

    下面就为大家详细介绍一下Vue发布项目的完整攻略。 1. 打包项目 在Vue项目开发完成后,需要将项目进行打包。Vue提供了一个命令行工具Vue CLI,可以使用Vue CLI将项目进行打包。 首先需要安装Vue CLI,可以在命令行中输入以下命令进行安装: npm install -g @vue/cli 安装完成后,在命令行中进入到项目根目录,使用以下命令…

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