改变组件默认上报事件的参数,添加额外参数

改变组件默认上报事件的参数,添加额外参数

vue 开发中时常会进行组件封装,稍微复杂点的组件通常会上报事件给父级组件

然而组件默认返回的参数可能不能满足业务场景需求,++而组件作为通用组件,也不适合做额外封装++

  • 往往这种时候,只是想在组件上报事件参数基础上添加额外参数,触发父组件的方法

++假设++我封装了一个卡片选择组件(主要是针对样式进行封装),点击卡片后,会通过事件上报当前点击的卡片 item 对象

然而这些卡片是循环渲染出来的,父组件在收到上报的事件后,还额外需要知道当前点击的是循环里的第几个卡片

直接写个匿名函数,将原有参数接收后传递给页面函数

@change="(value) => factorChange(value, item)"

html 复制代码
<el-select v-model="item.value" :placeholder="`请选择${item.factorsName}`"  @change="(value) => factorChange(value, item)">
  <el-option v-for="factorItem in item.detailList" :key="factorItem.id" :label="factorItem.remark" :value="factorItem.value">
    <div class="user-tag">{{ factorItem.remark }}</div>
  </el-option>
</el-select>

++或者++组件里面只需要一个标题,调用时也只给了一个标题,上报事件上报的也是标题,而父组件想要得到的是该项的整个数据对象

$event 也可以拿来代表原有参数

  • @submit="handleSubmit(item, $event)"
html 复制代码
<part-title @title-click="handleModuleClick(item, $event)" />
相关推荐
社恐的下水道蟑螂20 分钟前
深入理解 React 中的 Props:组件通信的桥梁
前端·javascript·react.js
凌览28 分钟前
2025年,我和AI合伙开发了四款小工具
前端·javascript·后端
A242073493041 分钟前
深入浅出JS事件:从基础原理到实战进阶全解析
开发语言·前端·javascript
疯狂踩坑人42 分钟前
【Nodejs】Http异步编程从EventEmitter到AsyncIterator和Stream
前端·javascript·node.js
烧冻鸡翅QAQ1 小时前
从0开始的游戏编程——开发前的编程语言准备(JAVAScript)
开发语言·javascript·游戏
软弹1 小时前
Vue2 - Dep到底是什么?如何简单快速理解Dep组件
前端·javascript·vue.js
小笔学长1 小时前
事件委托:优化事件处理性能
javascript·性能优化·项目实战·前端开发·事件委托
白兰地空瓶1 小时前
告别 add(1, 2)!通过 JS 柯里化,让你的代码更加优雅
javascript·面试
ohyeah1 小时前
柯理化(Currying):让函数参数一个一个传递
前端·javascript
CryptoRzz1 小时前
StockTV API 对接全攻略(股票、期货、IPO)
java·javascript·git·web3·区块链·github