<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[gxdzi的博客]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/gxdzi</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; gxdzi]]></copyright><item><title><![CDATA[el-table点击高亮，如果点击频率快，就会出现第一条高亮还是选中的，但是此时还有其他行也是高亮的]]></title><link>https://blog.csdn.net/gxdzi/article/details/162487206</link><guid>https://blog.csdn.net/gxdzi/article/details/162487206</guid><author>gxdzi</author><pubDate>Wed, 01 Jul 2026 14:13:46 +0800</pubDate><description><![CDATA[本文介绍了使用Element Plus表格组件实现行高亮功能的代码示例。通过highlight-current-row属性开启高亮功能，配合row-key指定唯一行标识符"id"，并使用current-row-key绑定当前高亮行的key值。在handleCurrentChange事件处理中同步更新当前行ID，确保快速点击时高亮状态正确维护。代码简洁有效地解决了多行同时高亮的问题，提升了表格交互体验。]]></description><category></category></item><item><title><![CDATA[Vue3_TypeScript实战类型定义最佳实践]]></title><link>https://blog.csdn.net/gxdzi/article/details/157397662</link><guid>https://blog.csdn.net/gxdzi/article/details/157397662</guid><author>gxdzi</author><pubDate>Mon, 26 Jan 2026 16:56:58 +0800</pubDate><description><![CDATA[在 Vue 3 与 TypeScript 的开发实践中，正确地为组件 Props 定义类型是保证类型安全的第一道防线。使用 TypeScript 接口（Interface）来定义复杂对象结构，能够提供强大的类型推导和编译时错误检查。theme??theme?theme?theme?这种写法利用了 TypeScript 的泛型参数，通过语法可以直接传入一个类型字面量。其中接口明确规定了id必须是number类型，name。]]></description><category></category></item><item><title><![CDATA[uview-plus 表单校验 相关字段有数据有值的情况下非空验证失败问题]]></title><link>https://blog.csdn.net/gxdzi/article/details/155856155</link><guid>https://blog.csdn.net/gxdzi/article/details/155856155</guid><author>gxdzi</author><pubDate>Fri, 12 Dec 2025 14:51:07 +0800</pubDate><description><![CDATA[uniapp编写h5及小程序，组件库用的uview-plus，在进行表单校验的过程中，数据回显 数量明明是有值的，还是依旧提示填写数量（重新再次手动输入才能校验通过，明显是存在问题的）因为我这里的数量字段是number，我校验规则没有并没有显示指定type，所以默认是string，导致校验不成功，手动加上type: "number"也可解决问题。number字段回显 表单校验出现问题，转成string即可。勘察备注字段都没问题，数量这个字段校验出现问题。数量字段类型：number。]]></description><category></category></item><item><title><![CDATA[TypeScript 前端开发工程师学习路线]]></title><link>https://blog.csdn.net/gxdzi/article/details/155488898</link><guid>https://blog.csdn.net/gxdzi/article/details/155488898</guid><author>gxdzi</author><pubDate>Tue, 02 Dec 2025 11:24:14 +0800</pubDate><description><![CDATA[TypeScript 学习的核心是理解类型系统的本质类型是集合- 理解类型之间的包含关系类型是约束- 类型帮助我们在编译时发现错误类型是文档- 好的类型定义就是最好的文档类型是工具- 利用类型获得更好的开发体验记住：TypeScript 的目标不是让你写更多代码，而是让你写更安全、更可维护的代码。]]></description><category></category></item><item><title><![CDATA[怎么写好ts]]></title><link>https://blog.csdn.net/gxdzi/article/details/155357633</link><guid>https://blog.csdn.net/gxdzi/article/details/155357633</guid><author>gxdzi</author><pubDate>Fri, 28 Nov 2025 16:37:12 +0800</pubDate><description><![CDATA[摘要：本文总结了写好TypeScript的进阶技巧，分为4个层级：1) 基础规范（开启严格模式、避免any）；2) 利用类型推导（as const、泛型）；3) 处理复杂业务状态（联合类型、工具类型）；4) 运行时安全（结合Zod校验）。核心思维要从&quot;消除报错&quot;转向&quot;设计健壮类型&quot;，通过类型系统在编码阶段暴露错误，提升代码质量。建议通过阅读优秀源码和类型挑战来提升技能，但要注意可读性优先于复杂技巧。]]></description><category></category></item><item><title><![CDATA[node ~ buffer]]></title><link>https://blog.csdn.net/gxdzi/article/details/153469579</link><guid>https://blog.csdn.net/gxdzi/article/details/153469579</guid><author>gxdzi</author><pubDate>Fri, 17 Oct 2025 14:39:32 +0800</pubDate><description><![CDATA[JavaScript 语言自身只有字符串数据类型，没有二进制数据类型,但在网络通信、文件操作等场景中，数据通常以二进制形式传输或存储，Buffer 提供了高效的方式来处理这些二进制数据它类似于整数数组，但专门用于存储原始二进制数据虽然 Buffer对象的内容可以在创建后修改，但其长度是固定的，不 能动态改变Buffer 类似于数组，但它专门用于存储二进制数据。你可以把  Buffer 看作是一个固定长度的、存储原始二进制数据的“数组”]]></description><category></category></item><item><title><![CDATA[git一个分支最后一条记录合并到另一条分支上]]></title><link>https://blog.csdn.net/gxdzi/article/details/153469511</link><guid>https://blog.csdn.net/gxdzi/article/details/153469511</guid><author>gxdzi</author><pubDate>Fri, 17 Oct 2025 14:33:37 +0800</pubDate><description><![CDATA[git checkout 目标分支名git merge 源分支名~N…源分支名例如，合并最后3条提交：bash方法三：使用 git format-patch 和 git am这种方法适用于跨仓库或需要保存补丁文件的情况：bash。]]></description><category></category></item><item><title><![CDATA[封装日期选择器组件，带有上周，下周按钮]]></title><link>https://blog.csdn.net/gxdzi/article/details/151367609</link><guid>https://blog.csdn.net/gxdzi/article/details/151367609</guid><author>gxdzi</author><pubDate>Tue, 09 Sep 2025 17:39:03 +0800</pubDate><description><![CDATA[【代码】封装日期选择器组件，带有上周，下周按钮。]]></description><category></category></item><item><title><![CDATA[react生命周期，详细版本]]></title><link>https://blog.csdn.net/gxdzi/article/details/151263180</link><guid>https://blog.csdn.net/gxdzi/article/details/151263180</guid><author>gxdzi</author><pubDate>Sat, 06 Sep 2025 21:45:09 +0800</pubDate><description><![CDATA[React 组件的生命周期分为三个阶段：挂载（Mounting）、更新（Updating） 和 卸载（Unmounting）。● useEffect(() => {}, []) → 替代 componentDidMount 和 componentDidUpdate。● useEffect(() => { return () => {} }, []) → 替代 componentWillUnmount。三、卸载阶段（Unmounting）一、挂载阶段（Mounting）二、更新阶段（Updating）]]></description><category></category></item><item><title><![CDATA[URL schemes汇总]]></title><link>https://blog.csdn.net/gxdzi/article/details/150352597</link><guid>https://blog.csdn.net/gxdzi/article/details/150352597</guid><author>gxdzi</author><pubDate>Wed, 13 Aug 2025 18:09:38 +0800</pubDate><description><![CDATA[支付宝
微信
系统
百度
腾讯
网易
银行
社交
购物
音频
工具
魔术
云闪付
游戏娱乐
其他花费半天整理出来的URL scheme链接，支付宝，微信，系统，部分银行部分网易已亲测有效，以备后用
亲测有效支付宝
功能    URL
手机充值    alipay://platformapi/startapp?saId=10000003
扫一扫    alipay://platformapi/startapp?saId=10000007
账单    alipay://platformapi/startapp?]]></description><category></category></item><item><title><![CDATA[同一个接口，掉2次，取消上次请求，详细代码]]></title><link>https://blog.csdn.net/gxdzi/article/details/146155690</link><guid>https://blog.csdn.net/gxdzi/article/details/146155690</guid><author>gxdzi</author><pubDate>Mon, 10 Mar 2025 15:24:22 +0800</pubDate><description><![CDATA[无需额外编写代码，只需确保在您的项目中通过导入并使用这个配置好的 axios 实例来发起请求即可。在您提供的背景知识中，文件 src/utils/request.js 已经包含了实现同一个接口调用两次时取消上次请求的逻辑。// 引入CancelToken对象。// 可选：取消后删除令牌。其他配置，如设置token、序列化参数等 …// 检查是否存在取消令牌，如果存在则取消上次请求。// 为本次请求创建新的取消令牌。// 存储取消令牌的对象。// 创建axios实例。// 获取请求的唯一标识。]]></description><category></category></item><item><title><![CDATA[unplugin-vue-components，unplugin-auto-import，借用ai去学习]]></title><link>https://blog.csdn.net/gxdzi/article/details/145779612</link><guid>https://blog.csdn.net/gxdzi/article/details/145779612</guid><author>gxdzi</author><pubDate>Fri, 21 Feb 2025 15:56:35 +0800</pubDate><description><![CDATA[好的，我现在需要帮助用户理解他们提供的这段Vite配置代码。用户之前已经询问过关于`ElementPlusResolver`的导入问题，现在他们展示了在`vite.config.ts`中使用该解析器的具体配置。我需要逐步分析这段代码，并解释每个部分的作用。AutoImport和Components。这两个插件都属于的一部分，或者可能来自其他unplugin插件，比如。需要确认这两个插件的来源，但根据常见的配置，AutoImport可能来自，而Components来自。]]></description><category></category></item><item><title><![CDATA[TS从0到1入门到大神]]></title><link>https://blog.csdn.net/gxdzi/article/details/145678611</link><guid>https://blog.csdn.net/gxdzi/article/details/145678611</guid><author>gxdzi</author><pubDate>Mon, 17 Feb 2025 11:22:01 +0800</pubDate><description><![CDATA[watch src 代表只监听 src 目录下的文件变化，然后执行下面的命令-e ts 代表监听 ts 文件的变化，然后执行下面的命令–exec 代表执行下面的命令tsc。]]></description><category></category></item><item><title><![CDATA[express JWT]]></title><link>https://blog.csdn.net/gxdzi/article/details/144851771</link><guid>https://blog.csdn.net/gxdzi/article/details/144851771</guid><author>gxdzi</author><pubDate>Tue, 31 Dec 2024 15:50:56 +0800</pubDate><description><![CDATA[当接收到请求时，从请求头中获取存储的 JWT（通过 req.headers.authorization），并使用 jsonwebtoken 的 verify 方法验证 JWT 的有效性。如果匹配，则返回登录成功的 JSON 响应，并使用 jsonwebtoken 的 sign 方法生成一个 JWT，其中包含用户的 ID 信息，并设置了过期时间为 24 小时。这段代码实现了基本的用户登录验证和通过 JWT 鉴权的接口，在登录成功后生成的 JWT 中包含了用户的 ID 信息，从而在后续请求中进行验证和授权。]]></description><category></category></item><item><title><![CDATA[Nodejs pngquant]]></title><link>https://blog.csdn.net/gxdzi/article/details/144724909</link><guid>https://blog.csdn.net/gxdzi/article/details/144724909</guid><author>gxdzi</author><pubDate>Wed, 25 Dec 2024 17:58:22 +0800</pubDate><description><![CDATA[pngquant是一个用于压缩 PNG 图像文件的工具。它可以显著减小 PNG 文件的大小，同时保持图像质量和透明度。通过减小文件大小，可以提高网页加载速度，并节省存储空间。pngquant提供命令行接口和库，可轻松集成到各种应用程序和脚本中。]]></description><category></category></item><item><title><![CDATA[Nodejs os模块]]></title><link>https://blog.csdn.net/gxdzi/article/details/144724607</link><guid>https://blog.csdn.net/gxdzi/article/details/144724607</guid><author>gxdzi</author><pubDate>Wed, 25 Dec 2024 17:48:32 +0800</pubDate><description><![CDATA[非常经典的例子 webpack vite 大家应该都用过 他们有一个配置项可以打开浏览器 open:true 我们来简单复刻一下。例如我的电脑是六核十二线程就会获取到12个线程。知道这些信息有什么用？]]></description><category></category></item><item><title><![CDATA[我的创作纪念日]]></title><link>https://blog.csdn.net/gxdzi/article/details/144659290</link><guid>https://blog.csdn.net/gxdzi/article/details/144659290</guid><author>gxdzi</author><pubDate>Mon, 23 Dec 2024 10:23:18 +0800</pubDate><description><![CDATA[提示：职业规划、创作规划等​​。]]></description><category></category></item><item><title><![CDATA[Serverless 时代]]></title><link>https://blog.csdn.net/gxdzi/article/details/144271699</link><guid>https://blog.csdn.net/gxdzi/article/details/144271699</guid><author>gxdzi</author><pubDate>Thu, 05 Dec 2024 17:16:29 +0800</pubDate><description><![CDATA[一直以来，应用的逻辑重心偏向后端，前端开发者不甚愿意了解业务，对业务方面的思考比较浅薄。但在 FaaS 模式下，前端开发者除了担负传统的界面开发，还要担负数据管理的工作（编写云函数操作数据），此时不再由后端提供接口，数据对接需要前端开发者自己开发和调试，这就要求每个前端开发者必须有全栈开发的能力。在这个综合项目中，我会带领大家一同体验前端 + Serverless 的全栈开发流程，从头开始实现一个完整的应用，并且配置和编写服务函数与前端对接，这部分非常有意思，相信你也能从这种全新的开发模式中看到未来。]]></description><category></category></item><item><title><![CDATA[el-checkbox的默认值从true和false更改为0和1]]></title><link>https://blog.csdn.net/gxdzi/article/details/144271618</link><guid>https://blog.csdn.net/gxdzi/article/details/144271618</guid><author>gxdzi</author><pubDate>Thu, 05 Dec 2024 17:13:06 +0800</pubDate><description><![CDATA[【代码】el-checkbox的默认值从true和false更改为0和1。]]></description><category></category></item><item><title><![CDATA[魔法甜点之和：小包的新挑战]]></title><link>https://blog.csdn.net/gxdzi/article/details/144194020</link><guid>https://blog.csdn.net/gxdzi/article/details/144194020</guid><author>gxdzi</author><pubDate>Mon, 02 Dec 2024 17:35:59 +0800</pubDate><description><![CDATA[小R不再追求甜点中最高的喜爱值，今天他想要的是甜点喜爱值之和正好匹配他的预期值 S。为了达到这个目标，他可以使用魔法棒来改变甜点的喜爱值，使其变为原来喜爱值的阶乘。个魔法棒，他可以选择任意甜点使用，但每个甜点只能使用一次魔法棒。他的目标是通过选择一些甜点，可能使用魔法棒，使得这些甜点的喜爱值之和恰好为。请计算小R有多少种不同的方案满足他的要求。如果两种方案中，选择的甜点不同，或者使用魔法棒的甜点不同，则视为不同的方案。下午茶小哥今天带来了 N 个甜点，每个甜点都有一个固定的喜爱值。]]></description><category></category></item></channel></rss>