【vue2事件传参1】自定义参数:在elementui的change事件中,自定义参数的传递方法

简介: 【vue2事件传参1】自定义参数:在elementui的change事件中,自定义参数的传递方法

一、问题:

       在elementUI的开发过程中,有时候会经常遇到,在已定义好的change事件中,想要传递一些自定义的数据,应该怎么解决?

二、解决方案:

1、select标签的change事件

               正常情况:默认返回的是目前选中的值。

               特殊情况:要传递自定义参数index呢?就需要用到$event,来获取默认的值,然后再其后面来实现对自定义参数的传递。

               注:【该$event是指当前触发的是什么事件(鼠标事件,键盘事件等)】

2、InputNumber计数器中的change事件

               正常情况:默认返回的是newValue,oldValue

               特殊情况:要传递自定义参数index呢?需要用到箭头函数来变通,实现自定义参数的传递。

三、具体案例:

案例1、select标签的change事件

       【准备数据】

        在data中定义select标签选项中的数据为options数组。数据格式如下:

data() {
      return {
        options: [{
          value: '选项1',
          label: '黄金糕'
        }, {
          value: '选项2',
          label: '双皮奶'
        }, {
          value: '选项3',
          label: '蚵仔煎'
        }, {
          value: '选项4',
          label: '龙须面'
        }, {
          value: '选项5',
          label: '北京烤鸭'
        }],
        value: ''
      }

       【正常情况】

       在<template>模板中使用select标签来显示下拉选项,绑定change事件为selectedItem。代码如下:

<el-select v-model="value" placeholder="请选择" @change="selectedItem">
    <el-option
      v-for="item in options"
      :key="item.value"
      :label="item.label"
      :value="item.value">
    </el-option>
</el-select>

       在methods方法中,定义selectedItem方法,来实现与标签change事件的响应。代码如下:

selectedItem(e){
      console.log("你选择了:",e)
    },

       页面效果为:

当然,你也可以直接传递对象形式的。代码的具体变化如下:

        【特殊情况】

       传递自定义的参数。以上面数据为例,如果想同时传递一个自定义index值,该如何去做呢?

       1.更改标签事件中的绑定事件的写法:

        2.更改绑定事件中参数传递的数量:

        输出结果为:

 

<>案例2、InputNumber计数器中的change事件

       【正常情况】

        页面效果:

       【特殊情况】

页面效果:

 

 

 

 

 

 

 

 

目录
相关文章
|
1月前
|
监控 JavaScript 开发者
在 Vue 中,子组件为何不可以修改父组件传递的 Prop,如果修改了,Vue 是如何监控到属性的修改并给出警告的
在 Vue 中,子组件不能直接修改父组件传递的 Prop,以确保数据流的单向性和可预测性。如果子组件尝试修改 Prop,Vue 会通过响应式系统检测到这一变化,并在控制台发出警告,提示开发者避免这种操作。
|
2月前
|
前端开发
React添加路径别名alias、接受props默认值、并二次封装antd中Modal组件与使用
本文介绍了在React项目中如何添加路径别名alias以简化模块引入路径,设置组件props的默认值,以及如何二次封装Ant Design的Modal组件。文章还提供了具体的代码示例,包括配置Webpack的alias、设置defaultProps以及封装Modal组件的步骤和方法。
67 1
React添加路径别名alias、接受props默认值、并二次封装antd中Modal组件与使用
|
4月前
|
JavaScript 搜索推荐
vue【详解】props —— 子组件接收父组件传入的参数
vue【详解】props —— 子组件接收父组件传入的参数
53 0
|
6月前
|
JavaScript 安全 API
vue3注册添加全局实例属性的方法,如何在setup函数中调用
vue3注册添加全局实例属性的方法,如何在setup函数中调用
629 2
|
6月前
|
JavaScript
除了`v-bind`指令,还有哪些方法可以在Vue中绑定属性和数据?
除了`v-bind`指令,还有哪些方法可以在Vue中绑定属性和数据?
55 0
|
6月前
|
JavaScript 前端开发
vue动态class与触发事件点击
vue动态class与触发事件点击
95 0
|
6月前
|
JavaScript
Vue中子组件单个双向绑定发送事件使用input,多个使用 update:变量名;父组件接收时,v-model 接收单个,.sync 接收多个(vue3中使用v-model:name的写法)
Vue中子组件单个双向绑定发送事件使用input,多个使用 update:变量名;父组件接收时,v-model 接收单个,.sync 接收多个(vue3中使用v-model:name的写法)
|
JavaScript
Vue学习之参数传递与事件分发使用this.$emit(‘自定义事件名‘, 参数)自定义事件删除待办事项
数据项在 Vue 的实例中,但删除操作要在组件中完成,那么组件如何才能删除 Vue 实例中的数据呢? 此时就涉及到参数传递与事件分发了,Vue 为我们提供了自定义事件的功能很好的帮助我们解决了这个问题;使用this.$emit(‘自定义事件名’, 参数),操作过程如下
190 0
|
JavaScript
vue中监听属性和计算属性的区别
vue中监听属性和计算属性的区别
209 0
|
JavaScript 网络架构
vue传参和接受参数方法
vue传参和接受参数方法