- 博客(29)
- 收藏
- 关注
原创 element-ui的el-cascader增加全选按钮实现(附源码)
最近遇到了在级联选择器上添加全选框的需求 ,但是项目使用的是Vue2 + Element UI的架构,而我们都知道Element UI提供的级联选择器el-cascader是不支持全选框的,而我又没有在网上找到适合我项目的实现,索性自己实现一个组件(源码附在文末,需要自取)
2025-05-15 23:26:34
309
原创 Element表格样式,全局文件中实现斑马线效果
但是该方式只能实现在每一个表格实现地方声明stripe属性,那能不能在全局文件实现斑马纹样式呢?
2025-04-17 11:07:25
328
原创 子组件使用:visible.sync=“visible“进行双向的绑定导致该弹窗与其他弹窗同时显示的问题
同时控制台会出现警告信息,因为在子组件中直接修改了父组件传递的 prop 值。在 Vue 中,不推荐直接修改 prop,而是应该通过事件通知父组件进行修改。问题描述:最近写代码时遇到了一个问题:点击A弹窗后关闭,继续点击B弹窗,这时会同时弹窗A、B两个弹窗。经过排查后发现在子组件定义时使用了。并使用@close事件和 handleClose 方法来通知父组件更新值,该情况就会消失。目前并不清楚为什么会出现这样的情况,欢迎各位大佬在评论区答疑解惑o(^▽^)o。将其修改为单向数据传递。
2025-04-02 10:46:55
253
原创 单点登录(SSO)实战:基于Vue与Spring Boot的深度实现
在分布式系统架构中,单点登录(Single Sign-On)如同企业级应用的"万能钥匙",用户只需在统一认证中心完成一次身份验证,即可访问所有互信系统。其核心在于建立可信的令牌传递机制,我们选择JWT(JSON Web Token)作为载体,结合OAuth2简化模式实现轻量级SSO方案。
2025-04-01 23:24:31
543
原创 Trae如何使用插件Mybatis Log & MybatisX转换SQL语句?
字节出品的Trae作为VSCode的套皮开发前端非常顺手,但是为了白嫖无限量的Claude 3.7,还是尝试使用Trae开发Java。今天就说一下如何将插件Mybatis Log & MybatisX接入 Trae 查看转换后的SQL语句。
2025-03-20 11:13:58
588
原创 深入理解与应用 JavaScript 中的回调函数
在 JavaScript 编程中,回调函数是一个非常重要的概念。它不仅是一种编程模式,更是实现异步操作、事件处理和代码复用的核心工具。本文将从回调函数的基本概念出发,通过生动的例子帮助你深入理解它的作用,并探讨其实际应用场景。简单来说,回调函数就是作为参数传递给另一个函数,并在某个特定时刻被调用的函数。概念很简单,但理解起来很抽象,我们需要拆解一下这个概念:首先,回调函数的本质就是一个函数,从形式来看,它和其他普通函数长得一样,不同之处就在于“函数”前面的定语“回调”。什么是回调? 一个简单的例子就是:你在
2025-03-13 16:14:24
910
原创 Vue项目中如何使用SVG图标?
如果项目中有大量 SVG 图标,推荐使用 SVG Symbol Sprite 的方式,这样可以减少 HTTP 请求次数并优化性能。如果需要动态加载 SVG 图标,可以结合 Vue 的动态组件功能。Iconify 是一个支持多种图标的库,可以直接在项目中使用。可以借助一些成熟的第三方库来简化 SVG 图标的管理,例如。将所有 SVG 图标合并到一个文件中,并使用。目录下,然后可以直接在组件中引入并使用。文件,配置对 SVG 文件的处理规则。文件,可以通过以下方式引入并使用。在组件中动态加载 SVG 图标。
2025-02-28 15:31:29
1503
原创 (三)Leetcode算法之有序数组的平方
本代码的时间复杂度为O(n),空间复杂度也为O(n)。平方后,数组变为 [16,1,0,9,100]排序后,数组变为 [0,1,9,16,100]组成的新数组,要求也按。
2025-02-21 15:58:21
264
原创 SCSS——CSS的扩展和进化
就相当于CSS(层叠样式表)突然获得了编程语言的力量——可以写变量、玩函数、拆模块,甚至是“继承”样式!从“变量替换颜色”开始,逐步尝试嵌套和混合宏。记住,SCSS不是魔法,但能让你的CSS拥有“超级赛亚人”般的战斗力!它像一台“代码编译器”,将你写的SCSS转换成标准CSS。成熟的模块化生态:@use、@forward依赖管理。Next.js:内置支持.module.scss。更强大的逻辑控制:循环、条件语句、函数计算。兼容性无忧:编译后的CSS兼容所有浏览器。维护性提升:修改变量,全局生效。
2025-02-20 16:44:27
613
原创 「ES6新语法」解构赋值
*解构赋值(Destructuring Assignment)是一种从数组或对象中提取数据并赋值给变量的语法。**通过这种方式,我们可以更简洁地完成数据提取操作,避免冗长的代码。•传统的赋值方式let a, b;a = arr[0];b = arr[1];•使用解构赋值后// 输出: 1// 输出: 2可以看到,解构赋值大大简化了代码结构,使代码更加直观和易读。如果需要将对象属性赋值给不同的变量名,可以在解构时指定别名。// 输出: Bob// 输出: 30。
2025-02-13 15:21:49
445
原创 「Chrome 开发者模式」Element面板调试前端样式
Google Chrome浏览器内置了强大的开发者工具(DevTools),可以帮助我们实时查看和修改页面元素及其样式。本文简单介绍了如何使用Chrome的“Elements”标签来调整页面样式。在 Styles 标签页下找到 element.style ,输入background-color,回车,输入red,回车,可以看到元素的背景色样式已经被应用。您可以利用 DOM 树(类似于 HTML 文档)选择特定的 DOM 节点,并使用其他工具进行修改。(选择器选择器)后,您可以将鼠标悬停在页面上的元素上。
2025-02-07 17:10:54
1150
原创 (二)Leetcode算法之移除元素
你的函数应该返回 k = 5,并且 nums 中的前五个元素为 0,0,1,3,4。你在返回的 k 个元素之外留下了什么并不重要(因此它们并不计入评测)。你在返回的 k 个元素之外留下了什么并不重要(因此它们并不计入评测)。你的函数函数应该返回 k = 2, 并且 nums。元素的顺序可能发生改变。1. Javascript测试代码。注意这五个元素可以任意顺序返回。2. leetcode提交代码。2. leetcode提交代码。三、Javascript实现。中的前两个元素均为 2。1. Java测试代码。
2025-01-22 16:54:38
438
原创 前端发送request请求时,参数params和data的区别?
在前端开发过程中,当我们通过JavaScript或其框架(如Axios)向服务器发送HTTP请求时,经常会遇到需要传递参数的情况。根据不同的需求,这些参数可以通过params或data的方式进行传递。了解这两者的区别对于正确构建请求、确保数据准确传输至关重要。params通常用于GET请求中,它代表的是URL查询字符串中的键值对。当你使用params时,这些参数会直接附加到请求的URL后面,以“?”开头,多个参数之间用“&”分隔。
2025-01-20 16:17:17
630
原创 (一)Leetcode算法之二分查找
上述两种方式实现的逻辑完全一致,但是消耗的内存却存在较大差异。不同的语言有自己擅长的应用场景,在变量管理、内存优化、存储形式等等方面的不同都可能会导致内存的消耗差异。
2025-01-09 16:39:03
355
原创 MyBatis-Plus 分页插件配置的两种方式
如果你正在开发或维护一个基于 MyBatis-Plus 3.4.0 之前的项目,并且你的需求仅仅是分页功能,那么就足够了。对于 MyBatis-Plus 3.4.0 及之后的版本,官方推荐使用,因为它提供了更高的灵活性和更多的内置功能,可以根据实际需要轻松扩展应用的功能。
2025-01-08 23:27:20
610
原创 IDEA中如何使用Maven构建多模块项目?模块间如何相互调用?
在 IntelliJ IDEA 中使用 Maven 构建多模块项目(Multi-Module Project)是一个常见的开发场景,尤其适用于大型项目或需要将代码拆分为多个独立模块的项目。通过合理组织模块结构,可以提高项目的可维护性和扩展性。下文将详细说明如何IDEA 中使用 Maven 构建多模块项目以及模块间是如何相互调用的。通过以上步骤,你可以在 IntelliJ IDEA 中使用 Maven 构建一个多模块项目,并确保模块之间能够正确地相互调用。项目的 pom.xml:定义项目的整体结构和模块列表。
2025-01-02 16:14:18
801
原创 VPN?隧道?跳板机?代理服务器?网络通信中的术语都是什么含义?
防火墙(Firewall)是一种网络安全系统,它监控并控制基于预定义的安全规则进出网络的流量。防火墙可以是硬件设备、软件应用程序或两者的组合。其主要目的是在内部网络和外部网络(如互联网)之间建立一个屏障,以防止未经授权的访问,并保护内部资源免受恶意攻击。VPN 是一种通过公共网络(如互联网)创建的安全连接,使用户能够像在私有网络中一样安全地传输数据。它通过加密技术和身份验证机制确保数据的保密性和完整性。
2024-12-26 16:32:11
1072
原创 「MySQL」日期时间格式化函数 DATE_FORMAT() 的使用详解
是MySQL中用于格式化输出日期时间的函数,我们可以通过使用该函数满足大多数格式化日期时间的应用场景,本文的示例展示了如何获取当前日期和时间并将其格式化为一个常见的格式,您可以根据需要调整格式字符串来满足您的具体需求。但需要注意的是,不同的数据库系统可能支持不同的格式字符串,所以在使用时需要参考相应数据库的文档来确定正确的格式字符串。
2024-12-17 17:35:15
2645
原创 SQL小技巧——UNION ALL/UNION创建临时表
我们都知道,在SQL中,UNION ALL / UNION的作用是将多个 SELECT 语句的结果合并成一个结果集,常见的使用场景是作为查询结果的拼接,比如下列语句,但实际上,UNION ALL / UNION也可以实现类似于创建临时表的功能。UNION ALL本文只是给出了一非常简单的例子,在实际的使用中可以根据情况再进行优化,但前提是替换的子查询的表所需的记录较少且固定,那么这个前提下一般不会替换业务表,可能是一些固定的对照表比如操作的n中情况的记录表等等。
2024-12-12 18:37:26
261
原创 WITH语句还是子查询?
1.WITH语句(CTE)将查询分解成多个步骤,助于组织和简化复杂的查询逻辑支持递归查询,这对于处理层次结构数据非常有用CTE如果被多次引用,它的结果只会被计算一次,可以提高性能CTE如果只被使用一次,它的执行时间一般会长于同样逻辑的子查询CTE在执行时通常会被物化,即创建临时表用于存储WITH语句的结果,导致额外的I/O和内存并非所有数据库系统都支持CTE,尤其是较老的版本。例如,MySQL直到8.0版本才支持CTE。2.子查询子查询通常嵌套在主查询的FROM子句或WHERE。
2024-12-05 19:03:16
481
原创 ClickHouse与MySQL SQL语法差异详解
ClickHouse和MySQL在SQL语法上的差异主要体现在数据类型、聚合函数、外部语言支持、索引机制以及分区表支持等方面。这些差异使得两者在不同的应用场景下各有优势。ClickHouse在处理大规模数据分析和OLAP查询时表现出色,而MySQL则在事务处理和中小规模数据管理中更为常见。了解这些差异对于选择合适的数据库系统至关重要。通过上述示例,我们也可以看出两者在SQL语法上有很多相似之处,但在实际应用中需要根据具体的数据库特性来编写和优化SQL语句。
2024-11-28 23:51:05
996
原创 详细解析Mybatis #{} 和 ${} 的区别
Mybatis允许使用 #{} 和 ${} 在编写的SQL语句中进行参数传递,但是二者在使用上存在一些不同,今天就详细解析一下。
2024-11-21 23:26:14
345
原创 Mybatis如何查看转换后的SQL语句
该工具类是Mybatis内部用于处理PreparedStatement的类,负责将参数设置到预编译的SQL语句中。打完断点以后,它会在每一个执行的Mybatis语句中的位置停顿,想要查看目标代码的对应SQL,可以在目标代码处提前打一个断点定位一下。,statement下还有一个变量sql,这个sql存放的是没有拼接非。stmt下的statement变量就是转换后的sql语句。的方法,将断点打在ps.execute()参数之前的sql语句,参数都用。
2024-11-14 17:36:41
177
原创 Java中的匿名实体类
(Anonymous Inner Class)是Java中一种特殊的内部类,该类没有名称,当创建一个匿名内部类时,实际上是在定义这个类,并立即实例化它,但是定义出的类只被实例化一次,即创建的是一个单例对象。
2024-11-08 00:00:45
276
原创 SpringBoot定时任务——@Scheduled注解及SchedulingConfigurer配置线程池
使用@Scheduled注解定义定时任务。可以通过fixedRatefixedDelay或cron表达式来设置任务的执行频率。@Component// 每隔 5 秒执行一次// 每隔 5 秒执行一次,延迟 2 秒// 使用 cron 表达式,每分钟执行一次")通过@Scheduled注解和接口,Spring Boot 提供了强大的定时任务功能。你可以根据具体需求配置任务的执行频率和线程池,以实现高效的定时任务管理。
2024-10-17 17:15:48
2520
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人