<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Turn_to_empty的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Turn_to_empty</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Turn_to_empty]]></copyright><item><title><![CDATA[【干货】Canvas 旋转最佳实践：离屏快照 + requestAnimationFrame 平滑方案]]></title><link>https://blog.youkuaiyun.com/Turn_to_empty/article/details/149362233</link><guid>https://blog.youkuaiyun.com/Turn_to_empty/article/details/149362233</guid><author>Turn_to_empty</author><pubDate>Wed, 16 Jul 2025 11:12:30 +0800</pubDate><description><![CDATA[本文介绍了一套高性能Canvas旋转方案，解决了前端图像处理中常见的旋转锯齿、闪烁和尺寸计算问题。该方案采用离屏画布快照技术，通过Promise队列管理旋转顺序，使用requestAnimationFrame实现平滑渲染，并自动计算旋转后的最佳尺寸。核心类封装了旋转逻辑，支持任意角度的旋转，提供一键清理内存功能，还能导出旋转后的图片便于调试。]]></description><category></category></item><item><title><![CDATA[解决 contenteditable 删除非法字符导致光标跳到开头的问题]]></title><link>https://blog.youkuaiyun.com/Turn_to_empty/article/details/147061358</link><guid>https://blog.youkuaiyun.com/Turn_to_empty/article/details/147061358</guid><author>Turn_to_empty</author><pubDate>Tue, 08 Apr 2025 11:12:29 +0800</pubDate><description><![CDATA[在自定义输入框或富文本场景中，DOM 更新（如修改 textContent）会导致光标丢失。本文介绍如何在监听空格输入时，先记录光标偏移，再更新内容，最后使用 Selection 和 Range API 精准恢复光标位置，解决输入体验中断的问题，适用于输入法兼容、内容标注等复杂交互场景。]]></description><category></category></item><item><title><![CDATA[Git 中回退版本后修改并提交]]></title><link>https://blog.youkuaiyun.com/Turn_to_empty/article/details/147040175</link><guid>https://blog.youkuaiyun.com/Turn_to_empty/article/details/147040175</guid><author>Turn_to_empty</author><pubDate>Mon, 07 Apr 2025 11:28:02 +0800</pubDate><description><![CDATA[保留原提交历史，生成一个新的提交来撤销旧提交的修改（适用于团队协作或已共享的提交）。：想保留原分支历史，基于旧版本修改后创建新分支（不强制覆盖远程分支）。在 Git 中回退版本后修改并提交的操作，通常需要结合。：彻底丢弃当前最新提交，基于某个旧版本修改后生成新提交（通过以上方法，可以灵活处理版本回退后的修改与提交需求。，适用于个人分支或未共享的提交）。]]></description><category></category></item><item><title><![CDATA[Vue2 + ant Design 1.7.2 实现表格伸缩列]]></title><link>https://blog.youkuaiyun.com/Turn_to_empty/article/details/145728155</link><guid>https://blog.youkuaiyun.com/Turn_to_empty/article/details/145728155</guid><author>Turn_to_empty</author><pubDate>Fri, 21 Feb 2025 14:23:43 +0800</pubDate><description><![CDATA[近期接到一个需求，需要实现一个动态表格，并使表格的列支持拖拽伸缩。在初步调研时，发现官方文档中已有相关案例，但一上手实现后却遇到了许多 bug，导致功能无法正常使用。查阅相关博客，也是找到了对应的解决方案。谨以此文记录下本次的踩坑过程，分享解决方案与优化思路。]]></description><category></category></item><item><title><![CDATA[Git 提交时 修改文件名大小写 git检测不到文件名变更【补充记录】]]></title><link>https://blog.youkuaiyun.com/Turn_to_empty/article/details/138217616</link><guid>https://blog.youkuaiyun.com/Turn_to_empty/article/details/138217616</guid><author>Turn_to_empty</author><pubDate>Fri, 26 Apr 2024 14:46:25 +0800</pubDate><description><![CDATA[Git 提交时 修改文件名大小写 未检测到文件变更，最简单的方法为开启 git 忽略大小写配置，以便显示文件变更。]]></description><category></category></item><item><title><![CDATA[D3JS 实现绘制折线效果（svg）]]></title><link>https://blog.youkuaiyun.com/Turn_to_empty/article/details/137616931</link><guid>https://blog.youkuaiyun.com/Turn_to_empty/article/details/137616931</guid><author>Turn_to_empty</author><pubDate>Thu, 11 Apr 2024 00:37:10 +0800</pubDate><description><![CDATA[D3JS 实现折线画笔效果：通过按下鼠标左键开始绘制，移动鼠标更新路径坐标预览效果，再次点击后则将鼠标当前位置添加进路径集，移动鼠标更新路径坐标预览效果，双击鼠标左键则结束绘制；通过画布的平移与缩放不影响画笔的绘制效果。]]></description><category></category></item><item><title><![CDATA[D3JS 实现画笔效果（svg）]]></title><link>https://blog.youkuaiyun.com/Turn_to_empty/article/details/137616199</link><guid>https://blog.youkuaiyun.com/Turn_to_empty/article/details/137616199</guid><author>Turn_to_empty</author><pubDate>Thu, 11 Apr 2024 00:12:18 +0800</pubDate><description><![CDATA[D3JS 实现画笔效果：通过按下鼠标左键开始绘制，移动鼠标更新路径坐标；通过画布的平移与缩放不影响画笔的绘制效果。]]></description><category></category></item><item><title><![CDATA[D3JS 画布缩放与平移（修改d3默认事件(进阶)：按住轮滑为平移，滚动轮滑为缩放）]]></title><link>https://blog.youkuaiyun.com/Turn_to_empty/article/details/137601592</link><guid>https://blog.youkuaiyun.com/Turn_to_empty/article/details/137601592</guid><author>Turn_to_empty</author><pubDate>Wed, 10 Apr 2024 17:07:12 +0800</pubDate><description><![CDATA[D3JS 画布缩放与平移（修改d3默认事件(进阶)：按住轮滑为平移，滚动轮滑为缩放）]]></description><category></category></item><item><title><![CDATA[D3JS 实例化]]></title><link>https://blog.youkuaiyun.com/Turn_to_empty/article/details/137474614</link><guid>https://blog.youkuaiyun.com/Turn_to_empty/article/details/137474614</guid><author>Turn_to_empty</author><pubDate>Sun, 07 Apr 2024 19:33:29 +0800</pubDate><description><![CDATA[将d3.js进行实例化，一系列操作放于实例中定义]]></description><category></category></item><item><title><![CDATA[D3JS 画布缩放与平移（默认：鼠标左键为平移，滚动轮滑为缩放）]]></title><link>https://blog.youkuaiyun.com/Turn_to_empty/article/details/137461839</link><guid>https://blog.youkuaiyun.com/Turn_to_empty/article/details/137461839</guid><author>Turn_to_empty</author><pubDate>Sun, 07 Apr 2024 18:58:35 +0800</pubDate><description><![CDATA[D3JS 画布缩放与平移]]></description><category></category></item><item><title><![CDATA[D3JS 图元拖拽功能（drag）]]></title><link>https://blog.youkuaiyun.com/Turn_to_empty/article/details/137361852</link><guid>https://blog.youkuaiyun.com/Turn_to_empty/article/details/137361852</guid><author>Turn_to_empty</author><pubDate>Thu, 04 Apr 2024 02:06:01 +0800</pubDate><description><![CDATA[D3JS 图元拖拽功能（drag）]]></description><category></category></item><item><title><![CDATA[D3JS 点击按钮生成圆点，并实现属性的动态修改]]></title><link>https://blog.youkuaiyun.com/Turn_to_empty/article/details/137361047</link><guid>https://blog.youkuaiyun.com/Turn_to_empty/article/details/137361047</guid><author>Turn_to_empty</author><pubDate>Thu, 04 Apr 2024 00:42:41 +0800</pubDate><description><![CDATA[D3JS 点击按钮生成圆点，并实现属性的动态修改]]></description><category></category></item><item><title><![CDATA[D3JS 绘图工具]]></title><link>https://blog.youkuaiyun.com/Turn_to_empty/article/details/137359480</link><guid>https://blog.youkuaiyun.com/Turn_to_empty/article/details/137359480</guid><author>Turn_to_empty</author><pubDate>Wed, 03 Apr 2024 23:07:57 +0800</pubDate><description><![CDATA[D3绘图工具提纲]]></description><category></category></item><item><title><![CDATA[vue3 + element-plus 修改 el-table 鼠标悬停背景、斑马纹颜色、表头颜色]]></title><link>https://blog.youkuaiyun.com/Turn_to_empty/article/details/136675533</link><guid>https://blog.youkuaiyun.com/Turn_to_empty/article/details/136675533</guid><author>Turn_to_empty</author><pubDate>Wed, 13 Mar 2024 13:51:09 +0800</pubDate><description><![CDATA[vue3修改 element-plus el-table 鼠标悬停、斑马纹及表头等样式]]></description><category></category></item><item><title><![CDATA[npm运行项目时报错 internal/process/esm_loader.js:74 及 nvm下载其余版本报错 Download failed. Rolling Back.]]></title><link>https://blog.youkuaiyun.com/Turn_to_empty/article/details/136454030</link><guid>https://blog.youkuaiyun.com/Turn_to_empty/article/details/136454030</guid><author>Turn_to_empty</author><pubDate>Mon, 04 Mar 2024 16:32:08 +0800</pubDate><description><![CDATA[npm运行报错，更换node版本，升级nvm版本，添加国内镜像]]></description><category></category></item><item><title><![CDATA[vue使用cesium≥1.95的引入及使用]]></title><link>https://blog.youkuaiyun.com/Turn_to_empty/article/details/132083826</link><guid>https://blog.youkuaiyun.com/Turn_to_empty/article/details/132083826</guid><author>Turn_to_empty</author><pubDate>Thu, 03 Aug 2023 15:13:17 +0800</pubDate><description><![CDATA[在使用1.108两天后 发现部分cesium插件暂不支持cesium的打包方式（1.95之后更换了构建方式） 打算先把版本回退至1.95了 这篇主要记载一下起初引入cesium≥1.95 之前在看了某篇博客后可以正常加载地球了 现在找不到了 就先浅记录一下吧。将 /node_modules/cesium/Build/Cesium 拷贝至 /public 下。在 /public/index.html 中的 <head> 标签中 添加。就可以正常使用啦 打印一下日志就可以看到Cesium的各个参数了。]]></description><category></category></item><item><title><![CDATA[【官网】cesium-threejs-experiment案例跑不通且报错问题]]></title><link>https://blog.youkuaiyun.com/Turn_to_empty/article/details/131933422</link><guid>https://blog.youkuaiyun.com/Turn_to_empty/article/details/131933422</guid><author>Turn_to_empty</author><pubDate>Thu, 27 Jul 2023 16:12:27 +0800</pubDate><description><![CDATA[cesium-threejs-experiment案例报错核心原因是：案例是18年5月份的，把Cesium及Three版本更新至想用的版本就可以了。]]></description><category></category></item><item><title><![CDATA[将异步(Promise)方法转化为同步执行]]></title><link>https://blog.youkuaiyun.com/Turn_to_empty/article/details/129929700</link><guid>https://blog.youkuaiyun.com/Turn_to_empty/article/details/129929700</guid><author>Turn_to_empty</author><pubDate>Fri, 02 Jun 2023 11:46:44 +0800</pubDate><description><![CDATA[将异步(Promise)方法转化为同步执行]]></description><category></category></item><item><title><![CDATA[封装加载遮罩层（el- $loading）]]></title><link>https://blog.youkuaiyun.com/Turn_to_empty/article/details/130584773</link><guid>https://blog.youkuaiyun.com/Turn_to_empty/article/details/130584773</guid><author>Turn_to_empty</author><pubDate>Tue, 09 May 2023 17:29:41 +0800</pubDate><description><![CDATA[封装加载遮罩层（el- $loading）]]></description><category></category></item><item><title><![CDATA[输入框不能编辑或数据不及时更新]]></title><link>https://blog.youkuaiyun.com/Turn_to_empty/article/details/129622551</link><guid>https://blog.youkuaiyun.com/Turn_to_empty/article/details/129622551</guid><author>Turn_to_empty</author><pubDate>Fri, 17 Mar 2023 16:15:04 +0800</pubDate><description><![CDATA[输入框不能编辑或数据不及时更新]]></description><category></category></item></channel></rss>