- 博客(29)
- 收藏
- 关注
原创 git配置别名以及log格式化输出
首先在命令行或者找到文件所在位置打开.gitconfig文件windows一般在 xxx(用户名)/.gitconfig下,可以在根目录命令行下输入 notepad .gitconfig 或 code .gitconfig 用vsCode打开mac则在命令行使用 vim ~/.gitconfig 打开,后续配置都是一样的。
2025-09-10 15:36:40
345
原创 前端消除异步的传染性封装
摘要 本文介绍了一种消除前端异步操作"传染性"的解决方案。通过封装ClearAsync类,利用Promise缓存机制和双重调用策略,将异步操作转换为同步写法,避免层层传递await或.then。核心思路是:第一次调用抛出Promise错误,在finally中完成实际调用并缓存结果,后续直接返回缓存。这种方式使得调用方无需处理异步逻辑,保持函数纯度。示例展示了如何使用该方案封装setTimeout异步操作,并验证其有效性。
2025-07-17 19:00:57
340
原创 前端大文件分片上传、并发池上传、断点续传和取消上传
本文详细介绍了大文件分片上传的实现方案,主要包括四个关键步骤:1. 文件切片 - 使用SparkMD5生成文件签名并按指定大小分片;2. 筛选已上传分片 - 通过接口获取已完成分片列表;3. 并发上传 - 实现3个并行上传任务,支持进度监控和取消操作;4. 合并文件 - 调用后端接口完成最终合并。文中提供了完整的TypeScript实现代码,包括文件分片、并发控制、进度跟踪等核心功能,并给出了实际应用中的完整调用示例。该方案支持断点续传,通过MD5校验优化上传效率,适合处理大文件上传场景。
2025-07-16 14:23:30
329
原创 前端文件预览打印时添加马赛克功能(tiff、ofd、图片)实现
摘要:本文介绍了一个前端文件打印时敏感信息打码的实现方案。通过tiff.js/ofd.js插件将文件转为HTML预览,在用户鼠标选择的区域添加马赛克div。关键点包括:1) 将马赛克div相对每页父元素定位而非整个文档,避免累积误差;2) 使用mmToPx方法将打印尺寸转换为像素;3) 处理图片文件时设置固定高度。实现包含鼠标事件监听、动态创建马赛克区域、删除功能以及响应式调整位置等功能。该方案解决了多页文档打码的精度问题,误差控制在1像素以内。
2025-06-19 17:18:31
248
原创 前端svg实现图片批注功能
主要功能点有 矩形框选、添加文本、画笔三个功能点,都可以拖拽改变位置,其中矩形可以调大小。(类似于电脑端微信截图里面的矩形框选、添加文本、画笔)利用svg的画图功能原生:react版:picture-note-react - npm
2024-05-11 17:37:14
1149
3
原创 React使用antd Table组件多选 切换页同样选中
就是本来选中了第一页的数据,再切换到第二页选择时,第一页选中的数据就没了,相信大家会经常遇到这个问题。要解决这个问题就只能利用table组件所提供的另外两个事件了,onSelect和onSelectAll,用onSelect这个来实现单行的选中和取消选中,onSelectAll实现整页的选中和取消选中。这个问题的原因是因为我们正常列表都是分页请求数据,在切换到第二页时,其实第一页的数据就已经没有了,会重新请求第二页的数据;当点击选中时就只有第二页数据了,所以选中的也只会是当前页的数据,其他页的就丢了。
2024-01-16 16:34:41
1598
5
原创 js 封装一个不能被修改的对象的函数
主要用到Object.freeze方法,它主要是让对象的属性不能被修改,即使修改了也无效,严格模式下会报错,但是它只能冻结第一层,所有要冻结深层的需要递归。因为上面使用了严格模式,所有会直接报错,如果不用严格模式可以修改,但是不会生效,也不会报错。那如果不用严格模式又想报错怎么办呢?可以用数据劫持或者proxy代理来做。这样的话其实Object.freeze用不用都可以了。
2023-08-14 15:59:04
202
原创 js封装一个请求函数,可以5个并发请求,等其中一个结束后面的补上,直到结束
【代码】js封装一个请求函数,可以5个并发请求,等其中一个结束后面的补上,直到结束。
2023-08-14 15:48:08
526
原创 react及vue前端项目使用history路由 部署nginx 404踩坑问题
这么一看是不是觉得没啥问题了,但是但是问题来了,结果虽然是跳转我项目的index.html了,但还是没匹配到我的路由,比如我跳转home页,他给我跳转我项目自己的404页了,出现了下面这个玩意儿。但是由于我的比较特殊,我是部署多个项目的也就是说文件结构是下面这种,像刚才那种配置的话就会跳转到根目录的index.html了,显然不是我想要的。我的配置就是这样,然后就好了,所有针对部署多个项目的情况应该这么配置,注意这个名字要和nginx里的那个文件夹名字一样。一种是哈希路由,其原理就是通过哈希值跳转。
2023-07-08 12:37:35
1146
原创 前端文件下载,a标签下载,ajax下载亲测有效
这段时间项目需要下载文件,刚开始直接用a标签的href加后端地址的方式就可以下载,这类方法可以下载zip文件等浏览器不能识别的文件,但是遇到下载txt和图片等文件就莫得办法了,因为浏览器会自动打开。
2022-05-26 14:43:16
3270
原创 react 后台管理权限路由选择框,antd表格魔改,实现将选中和半选中的权限框的id传给后端
react 后台管理权限选择框,antd表格魔改,实现将选中和半选中的权限框的id传给后端。使用递归,选中的、半选的id一并能获取到,并且很深的层级也没有问题
2022-05-24 14:35:50
865
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅