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>
相关推荐
XDHCOM5 小时前
ORA-32484重复列名错误,ORACLE数据库CYCLE子句故障修复与远程处理方案
数据库·oracle
翻斗包菜6 小时前
PostgreSQL 日常维护完全指南:从基础操作到高级运维
运维·数据库·postgresql
像我这样帅的人丶你还6 小时前
别再让JS耽误你进步了。
css·vue.js
@yanyu6666 小时前
07-引入element布局及spring boot完善后端
javascript·vue.js·spring boot
呆瑜nuage6 小时前
MySQL表约束详解:8大核心约束实战指南
数据库·mysql
liliangcsdn6 小时前
Agent Memory智能体记忆系统的示例分析
数据库·人工智能·全文检索
王霸天6 小时前
💥别再抄网上的Scale缩放代码了!50行源码教你写一个永不翻车的大屏适配
前端·vue.js·数据可视化
那个失眠的夜6 小时前
Mybatis延迟加载策略
xml·java·数据库·maven·mybatis
Rick19936 小时前
SQL 执行流程
数据库·sql
M--Y6 小时前
Redis常用数据类型
数据结构·数据库·redis