Vue组件分装之$attrs、$listener传递属性及事件

使用v-bind="$attrs"来将父组件的属性传递给自定义按钮

使用v-on="$listeners"将父组件的事件监听器传递给自定义按钮。

使用$slots获取父组件所有插槽以及作用域插槽对应的参数#[name]="scopeData"

这样,自定义按钮就能够直接响应父组件的事件,而不需要手动触发。

javascript 复制代码
  <Select ref="selectRef" v-bind="$attrs" v-on="$listener">
    <template v-for="(value, name) in $slots" #[name]="scopeData">
      <slot :name="name" v-bind="scopeData || {}"></slot>
    </template>
    <Option v-for="(item, index) in optionDatas" :value="item.value" :key="item.value + index">{{
      item.label
    }}</Option>
  </Select>
相关推荐
q***4641 小时前
离线安装 Nginx
运维·数据库·nginx
我科绝伦(Huanhuan Zhou)1 小时前
SQL进阶必备:从计算字段到多表联结,让查询效率翻倍!
数据库·sql
i***48612 小时前
Redis重大版本整理(Redis2.6-Redis7.0)
java·数据库·redis
驯狼小羊羔3 小时前
学习随笔-hooks和mixins
前端·javascript·vue.js·学习·hooks·mixins
r***86983 小时前
Redis 6.2.7安装配置
前端·数据库·redis
是Judy咋!3 小时前
Mongodb---副本集搭建(hashed分片)
数据库·mongodb·centos
q***14643 小时前
MySQL 批量插入详解:快速提升大数据导入效率的实战方法
大数据·数据库·mysql
Unstoppable223 小时前
八股训练营第 21 天 | Redis的数据类型有哪些?Redis是单线程的还是多线程的,为什么?说一说Redis持久化机制有哪些?
数据库·redis·缓存·八股
q***61503 小时前
【数据库】MySQL的安装与卸载
数据库·mysql·adb
无心水3 小时前
【分布式利器:Redis】Redis基本原理详解:数据模型、核心特性与实战要点
数据库·redis·缓存·数据模型·i/o多路复用·redis高并发·redis基本原理