Vuetify组件中常见的v-slot:activator=“{ on, attrs }“是什么意思?

article/2025/11/9 16:58:49

在使用Vuetify组件时,常看到v-slot:activator="{ on, attrs }"以及插槽中的v-bind="attrs" v-on="on"
例如:
在这里插入图片描述

由于之前写代码时少有这种写法而且是第一次遇见,用久了难免想知道是什么意思。因为国内没有相关的问题,于是自己去国外网站上搜了搜然后看了下Vue的文档并加上了自己的理解:

新写法

首先这个template是v-menu的插槽。v-slot:activator是具名插槽的新写法,旧写法slot="activator"在vue 2.6.0 起被废弃了。

作用域插槽

一般在父组件中引入了子组件,然后又在子组件中插入了插槽,如果插槽中引入了属性,例如:

//父组件中
<current-user>{{ user.firstName }}
</current-user>

此时的user属性只能引入的是父组件中的user属性,而不是子组件

这是vue的一个规则:父级模板里的所有内容都是在父级作用域中编译的;子模板里的所有内容都是在子作用域中编译的

那么,如何在父组件中引用子组件的数据呢?

这就需要使用到作用域插槽

在子组件childCpn中:

<slot v-bind:user="user">默认文字
</slot>

在父组件中:

<childCpn><template v-slot:default="slotProps">{{ slotProps.user}}</template>
</childCpn>

这样使用插槽时,就可以在父组件中直接使用了子组件的属性

所以回到一开始的问题,代码可以写成如下形式:

<v-menu><template v-slot:activator="slotProps"><v-btn v-bind="slotProps.attrs" v-on="slotProps.on">按钮</v-btn></template>
</v-menu>

通过获取到了子组件的属性,然后就可以在父组件中直接使用了

另外,作用域插槽的内部工作原理是将你的插槽内容包括在一个传入单个参数的函数里:

function (slotProps) {// 插槽内容
}

这意味着 v-slot 的值实际上可以是任何能够作为函数定义中的参数的 JavaScript 表达式。所以在支持的环境下(比如支持ES6的浏览器),也可以使用 ES6 解构来传入具体的插槽 prop,如下:

<v-menu><template v-slot:activator="{ on, attrs }"><v-btn v-bind="attrs" v-on="on">按钮</v-btn></template>
</v-menu>

这样的写法更加简洁明了
(关于解构语法不懂的可以去百度一下了解学习)

传递

还剩下v-bind="attrs"v-on="on",很容易想象到,这是把v-menu组件里面的获取到的属性集合attrs(相当于props对象)和事件集合on(相当于事件对象)传入到了v-btn组件中。该语法将一个或多个属性和一个或多个事件绑定到该元素:

引用一下Vue文档:

在这里插入图片描述
在这里插入图片描述

比如,把按钮(v-btn)的点击事件处理绑定到了v-menu上,所以可通过点击按钮(v-btn)然后达到弹出菜单的效果

写完这篇文章后不得不佩服Vuetify组件写法的巧妙和灵活,这次的思考令我对vue组件的写法产生了更多的认识和理解

参考链接

Stack Overflow

Vue中文文档

CSDN文章


http://chatgpt.dhexx.cn/article/cDvytlsj.shtml

相关文章

Tedddby Activator V5.1,免费绕过iOS 14.7Beta,支持iCloud登录

Tedddby Activator 是一款Windows下绕激活的工具&#xff0c;目前来说也是最好用的一款软件&#xff01; Tedddby Activator官网&#xff1a;https://tedddby.com 支持的功能 GSM两网绕过可以打电话/4G/短信/iCloud登陆/完美重启/消息推送 MEID三网游戏机绕过可以登陆iClou…

Spring Boot Actuator详解与深入应用(一):Actuator 1.x

《Spring Boot Actuator详解与深入应用》预计包括三篇&#xff0c;第一篇重点讲Spring Boot Actuator 1.x的应用与定制端点&#xff1b;第二篇将会对比Spring Boot Actuator 2.x 与1.x的区别&#xff0c;以及应用和定制2.x的端点&#xff1b;第三篇将会介绍Actuator metric指标…

springboot 集成 actuator

简介 spring-actuator做度量统计收集&#xff0c;使用Prometheus&#xff08;普罗米修斯&#xff09;进行数据收集&#xff0c;Grafana&#xff08;增强ui&#xff09;进行数据展示&#xff0c;用于监控生成环境机器的性能指标和业务数据指标。一般&#xff0c;我们叫这样的操作…

Activiti应用

1.介绍 Activiti是一个工作流引擎&#xff0c; activiti可以将业务系统中复杂的业务流程抽取出来&#xff0c;使用专门的建模语言 BPMN2.0进行定义&#xff0c;业务流程按照预先定义的流程进行执行&#xff0c;实现了系统的流程由activiti进行管理&#xff0c;减 少业务系统由…

springboot之Actuator

1、Actuator 介绍 Actuator是Springboot提供的用来对应用系统进行自省和监控的功能模块&#xff0c;借助于Actuator开发者可以很方便地对应用系统某些监控指标进行查看、统计等。 Actuator 的核心是端点 Endpoint&#xff0c;它用来监视应用程序及交互&#xff0c;spring-boo…

ActivitiListener

ActivitiListener 目录概述需求&#xff1a; 设计思路实现思路分析1.ActivitiListener2.Activity3.Gateway5.FieldExtension IOSpecification 参考资料和推荐阅读 Survive by day and develop by night. talk for import biz , show your perfect code,full busy&#xff0c;sk…

SolidWorks2016软件,SW2010-2016.Activator.GUI.SSQ激活闪退解决办法:

SolidWorks2016软件&#xff0c;SW2010-2016.Activator.GUI.SSQ激活闪退解决办法&#xff1a; 解决方案&#xff1a; 原贴&#xff1a; https://xcshare.cn/other/1033.html

Actuator

1&#xff0c;简介 Actuator’ ktʃʊˌeɪtə是 Spring Boot 提供的对应用系统的自省和监控的 集成功能&#xff0c;可以对应用系统进行配置查看、相关功能统计等。在 Spring Cloud 中主要是完成 微服务的监控&#xff0c;完成监控治理。可以查看微服务间的数据处理和调用&…

Spring boot——Actuator 详解

一、什么是 Actuator Spring Boot Actuator 模块提供了生产级别的功能&#xff0c;比如健康检查&#xff0c;审计&#xff0c;指标收集&#xff0c;HTTP 跟踪等&#xff0c;帮助我们监控和管理Spring Boot 应用。 这个模块是一个采集应用内部信息暴露给外部的模块&#xff0c…

Spring Boot Actuator详解

Actuator简介 什么是Spring Boot Actuator&#xff1f; Spring Boot Actuator 模块提供了生产级别的功能&#xff0c;比如健康检查&#xff0c;审计&#xff0c;指标收集&#xff0c;HTTP跟踪等&#xff0c;帮助我们监控和管理Spring Boot应用。这个模块是一个采集应用内部信…

C# 反射之Activator用法举例

概述 程序运行时&#xff0c;通过反射可以得到其它程序集或者自己程序集代码的各种信息&#xff0c;包括类、函数、变量等来实例化它们&#xff0c;执行它们&#xff0c;操作它们&#xff0c;实际上就是获取程序在内存中的映像&#xff0c;然后基于这个映像进行各种操作。 Acti…

将IPA放到服务器提供下载

2015年12月15日 09:45:16 LC_畅 阅读数&#xff1a;3696 &#xff0a; 上传到服务器我们需要两个文件&#xff0c;一个ipa和一个 plist文件 &#xff0a; 注意plist文件和ipa包的名字必须要相同&#xff08;最好取名英文&#xff09; 第一步&#xff1a;把ipa文件放到你们服务…

ipa文件包获取服务器地址,iOS获取App ipa包以及资源文件

要获得线上APP的ipa文件&#xff0c;现在有以下几种方案 1.通过PP助手下载安装到手机的应用 2.通过iTools助手下载安装到手机的应用 3.通过Apple Configurator 2(Mac商店)获取 前两种方案网上的教程很多&#xff0c;这里只介绍第三种方案 首先 去Mac上的App Store下载Apple Con…

AppleStore 原始ipa文件提取

//TODO Apple Configurator 2提取ipa文件_饿到饱的博客-CSDN博客安装Apple Configurator 2从Mac AppStore安装Apple Configurator 2下载ipa打开后连接设备&#xff0c;选中设备点击添加&#xff0c;如果没登录就登录Apple ID&#xff0c;登录后会把你在AppStore下过的应用都列…

获取ipa文件下载链接(appstore下载链接)

获取apptore下载链接 所需工具: 一台越狱的iphone 抓包工具(fiddler或burp等) 步骤 1、ios10以下的版本,越狱之后下载插件ssl kill就可对appstore进行抓包 2、ios11以后的版本,越狱后要想访问appstore还需appstore++插件 3、打开appstore,找到要下载的软件,点击下…

Mac 电脑下载 AppStore 中的 ipa 软件包详细流程

附&#xff1a;iPhone 移除描述文件详细步骤&#xff08;Apple Configurator 2&#xff09; 1、Mac 电脑中安装 Apple Configurator 2 软件。 2、电脑连接手机&#xff0c;并信任&#xff0c;在所有设备中&#xff0c;选中设备&#xff0c;然后点击顶部的加号&#xff0c;选…

关于直接下载第三方IPA应用分发平台之蒲公英的研究

目前基于第三方应用分发的平台比较常用的就属蒲公英、fir等&#xff0c;在我们提交到平台后&#xff0c;我们可以通过扫描应用二维码来下载&#xff0c;比如蒲公英平台如下&#xff1a; 那么以上是非常普通的一个操作过程&#xff0c;问题来了&#xff1a;如何直接在电脑端下载…

ipa在线安装搭建_GBox:一款ipa签名安装下载神器

(主要功能:ipa签名安装、ipa安装包下载) 最新版使用教程点这里,并免费附送有效的企业证书: Alex.Leung:GBox免越狱签名安装IPA教程​zhuanlan.zhihu.com 一、推荐理由 让我们对市面上主流ipa安装工具作个对比: Shu: 付费应用,并且得配合捷径脚本使用JSBox:付费应用,…

苹果iPA游戏软件资源下载网站

苹果iPA游戏软件资源下载网站推荐&#xff0c;这篇文章我以比较公平的方式整理一下目前一些苹果iPA资源下载网站&#xff0c;每个网站的内容可以参考对应的截图&#xff0c;从而快速选择适合自己的资源站点。 1.iPA商店&#xff1a;https://ipa.store/ 2.Decrypt IPA Store&…

【已解决】ipa降级教学 苹果旧版APP下载

ipa降级教学 苹果旧版APP下载 平板有个软件新版本不好用&#xff0c;需要降级&#xff0c;所以出一个教学。教程基于一个旧版本下载的软件。 下载链接会放在这里&#xff0c;自行下载。使用前注册并登录. 安装包下载&#xff1a; 旧版APP下载软件: https://pan.baidu.com/s…