自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 【深入源码】element-ui的el-upload组件上传文件失败后,无法再次上传的解决方式

本文将会介绍element-ui中的el-upload组件在上传文件接口返回失败后,无法再次上传的问题场景,问题出现原因,相关的el-upload源码,以及该问题对应的解决方式。

2025-10-10 18:45:00 518

原创 浏览器缓存机制简述(极简)

摘要: 当程序发包后客户仍看到旧内容,原因是浏览器缓存机制导致客户读取了本地缓存的资源而非服务器更新。浏览器通过强缓存(直接使用本地资源)和协商缓存(验证服务器更新)策略优化性能。解决方案是在打包文件时添加版本号后缀,使每次更新生成不同的资源URL,强制浏览器获取新资源而非读取缓存。

2025-09-30 11:37:53 173

原创 【富文本编辑器深入学习】(一)vue2手写富文本编辑器(附代码)

本文介绍了手写富文本编辑器的实现过程。首先通过contenteditable属性创建基础编辑框,然后利用document.execCommand实现工具栏功能(加粗、斜体、对齐等)。重点讲解了图片插入功能,通过FileReader将图片转为Base64编码插入。文章提供了完整代码示例,包含样式和交互逻辑。最后指出手写编辑器存在细节不足的问题,建议仅供学习理解,后续将分析成熟编辑器源码(如Quill、wangeditor等)。全文采用Vue框架实现,适合前端开发者学习富文本编辑器基本原理。

2025-08-06 21:30:00 2056

原创 前端速写语法规则Emmet简单使用教程

Emmet语法通过简洁的表达式快速生成HTML代码,大幅提升前端开发效率。摘要要点:1)标签生成:通过基础标签名、*数量、+并列、>嵌套、^跳出层级和()分组实现结构控制;2)属性设置:使用#添加ID、.添加类名、[]设置通用属性;3)编号功能:$符号实现正向编号,@控制起始值和递减;4)文本内容:用{}包裹可直接添加。通过组合这些语法,开发者只需输入一行表达式+TAB键即可生成复杂HTML结构。

2025-08-05 13:50:22 286

原创 elementUI中设置el-tooltip的popper-class样式不生效的原因

摘要:在使用Element UI的el-tooltip组件时,发现通过popper-class设置的样式无法生效。原因是el-tooltip生成的DOM结构与App.vue平级,不受scoped样式影响。解决方案是单独添加一个非scoped的style标签来定义该样式,但需注意类名命名避免冲突。

2025-07-16 21:30:58 676

原创 vue2自定义指令去除输入框前后空格

摘要:在Vue2项目中可通过自定义指令v-trim实现输入框自动去除前后空格。定义指令时,在inserted钩子中绑定blur事件监听,当输入框失去焦点时对值进行trim处理并触发input事件更新数据,在unbind钩子中移除事件监听。指令注册后,在el-input组件上使用v-trim即可实现用户输入内容在失焦时自动去除前后空格的效果。该方案兼容input和textarea元素,通过事件委托确保指令解绑时能正确清理资源。(150字)

2025-06-23 11:52:28 396

原创 Shell脚本编程语言基础学习教程

摘要 本文介绍了Shell脚本的基础知识,包括基本语法和常用操作。主要内容涵盖:1) 首个"Hello World"脚本示例及运行方法;2) 变量定义与使用规则,包括字符串、数组和特殊变量的处理;3) 流程控制语句如if-else判断和for/while循环的使用。文章通过代码示例详细说明每种语法结构的具体应用,并指出了Shell脚本特有的语法规则(如变量定义不能有空格)和注意事项(如单/双引号区别)。这些基础内容为编写自动化脚本提供了必要知识框架,适用于Linux系统管理和日常任务自动

2025-06-18 11:53:24 1583

原创 MyBatis-Plus框架中条件构造器Wrapper类的通用方法介绍

MyBatis-Plus框架中查询条件构造器Wrapper类的通用方法基本上都在抽象类里面。可以结合一起看,可以更清晰便捷地了解Wrapper条件构造器。

2025-06-05 21:30:00 599

原创 MyBatis-Plus框架中条件构造器Wrapper类的对比介绍

MyBatis-Plus框架提供了多种Wrapper类来简化数据库操作,包括条件查询和更新构造器。查询类有QueryWrapper、LambdaQueryWrapper和LambdaQueryChainWrapper,更新类有对应的UpdateWrapper、LambdaUpdateWrapper和LambdaUpdateChainWrapper。Lambda版本通过方法引用避免字段名拼写错误,类型更安全。代码示例展示了不同Wrapper的使用方式,以及如何通过链式调用简化操作。这些Wrapper类虽然高效

2025-06-04 15:32:16 861

原创 CSRF(跨站请求伪造)的介绍

本文介绍了CSRF跨站请求伪造攻击的原理和防范措施。通过伪造GET/POST请求,攻击者可利用用户已登录状态执行非法操作。主要防范方法包括:1)Token认证机制;2)SameSite Cookie属性设置(Strict/Lax/None);3)验证Referer/Origin请求头;4)重要操作增加短信/邮件二次验证。这些措施可有效防止CSRF攻击,其中SameSite属性和Token认证是最常用的防护手段。文章提醒开发者应结合多种安全机制,避免单一防护被绕过。

2025-05-24 19:30:45 797

原创 MyBatis动态SQL-单条SQL单表条件批量update

在Mybatis用单条SQL实现单表按不同条件更新不同的数据

2025-05-22 15:19:17 228

原创 MyBatis动态SQL-动态having

使用trim标签实现MyBatis的动态having

2024-07-22 14:55:45 1158 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除