从 Webpack 迁移到 Rspack 的实践记录

发表于:
Rspack

过去一段时间给一些前端项目做了改造,把构建器从 Webpack4/5 迁移到了 Rspack,大部分项目迁移完后,都减少了 50% 以上的构建时间,整体改善还是可观的。

选择 Rspack 另一方面的原因是它和 Webpack 兼容性较好,迁移成本相对较低,目前是一个非常推荐去尝试的构建器。笔者作为基建方,需要尽可能在底层做到最大的兼容,实际迁移过程中还是不可避免地遇到了一些问题,本文进行一个记录和分享。

2025 博客升级

发表于:
Blog

最近突然想把网站改一改,一看都有两年多没更新,也太鸽了......

趁着改版,写一篇记录一下这一历史进程。

Electron 实现文件关联

发表于:
桌面开发ElectronInno Setup

最近在做一个 Electron 桌面应用,需要实现文件关联,把特定后缀的文件关联到应用上,双击文件可以直接打开应用并读取文件。

文件关联与操作系统相关性比较大,不同的操作系统实现方式也会不同。不过如果使用 electron-builder 进行应用打包,可以直接通过 fileAssociations 配置来实现文件关联。

而我这边使用 electron-packager 打包,不会直接产出安装程序,所以需要自行实现文件关联,同时可以借机进一步了解 Windows 和 Mac 实现文件关联的细节。

Inno Setup

发表于:

最近工作上遇到了 Inno Setup,这对于我来说是个新东西,看不懂,那么就学一下吧。

进一步认识 SSH 和 SSH config

发表于:
SSH

不知道有多少人和我一样,对 SSH key 的接触起始于 Git 的使用,反正是啥也不懂,跟着教程一顿敲:

$ ssh-keygen -t rsa -b 2048 -C "xxxxxxxxxx@qq.com"

一路回车,然后把 id_rsa.pub 的内容填入到 Github/Gitlab 的设置里,就转头去使用 Git 了。

输入法与 keydown 事件

发表于:

输入、回车提交,这是一组在搜索场景中常见、友好的交互形式,但要将其做好以获得更好的用户体验,还需要关注其中的小小细节。

基于 React Hooks 的小型状态管理

发表于:
React

一年又又又要过去了,在这 2021 年的尾巴,来写写 React 的状态管理。

本文主要介绍一种基于 React Hooks 的状态共享方案,介绍其实现,并总结一下使用感受,目的是在状态管理方面提供多一种选择方式。

在博客中添加卡片式链接

发表于:
Blog

最近升级了的企业微信,发现发送链接信息的时候,企信会自动拉取链接的标题、描述和图片信息,并组合成卡片的形式进行展示,给人的感觉就很棒,既传递了更多的信息,又显得美观,就想着在博客里也加上这个功能。

效果是下面这样的,如果展示的还是链接,那可能是还没加载出来或者背后的服务挂了(白嫖不易):Github

截图效果如下:

卡片截图

Git Subtree 的使用

发表于:
Git

git 的 subtree 是一种复用源代码的方式,可以让多个仓库引用某个仓库的代码,也可以将仓库中的某个目录拆分成一个子仓库以供其他仓库使用。

相较于 git 的 submodule,目前社区中多更推崇 subtree,自己在使用了一段时间后总体也是认为 subtree 会更好用一些。

但同时,两者都有各自的一些问题,而 subtree 的问题目前有其他方式规避,整体用起来比较流畅,所以最终选择了 subtree。

实际上 subtree 命令需要在某个版本的 git 之后才被支持,但目前 git 的常用版本是完全足够的,所以也没去深究过。

博客框架 —— gugu

发表于:
BlogViteVue3

很久之就一直想把博客改成单页的,而中间发生了不少咕咕咕(懂得都懂,不懂的我也不用再说了 🐶)的事情,别说改造了,连文都没更新。在咕了大半年之后,终于完成了大改造,将原来使用的 Hexo 替换成了个人实现的博客框架 gugu

1/6
© 2017-2025 Daief's Blog