Blog

使用corepack

在翻看metamask-extension源码时候看到package.json中有个字段"packageManager": “yarn@4.9.1”,但在npm中查看yarn,最新版还是1.22.22,奇怪,那么实际项目怎么安装这个v4的yarn呢。仔细查下发现,其中是使用了corepack来做包管理器和版本管理。

8月 12, 2025

Ethers.js调研

最近开源项目需要做一个web3.js,于是调研下web3.js的头牌ethers.js。

8月 5, 2025

Claude Pro美区订阅,支持使用Claude Code

最近2个原因导致我决定订阅Claude Pro,1是Claude Code太火了,2是GPTs的对于系统提示词的理解总是掉链子即逻辑性还是不够强,因此决定尝试一下Claude Pro。这里mark下我是如何解决Claude Pro美区订阅的。

8月 4, 2025

小程序头像昵称获取

本文介绍小程序中用户头像和昵称的获取方法,包括新版API使用、兼容性处理以及最佳实践等,帮助开发者正确实现用户信息获取功能。

8月 4, 2025

手机投屏到电视的方法与个人使用体验

最近家人咨询手机如何投屏到电视,看来还很多还是不知道该功能,索性我就介绍手机投屏到电视的各种方法,并分享我的个人使用体验。

8月 2, 2025

Claude Code使用指南

Cursor 出圈之后,Claude Code紧接着横空出世,万万没想到终端下写代码竟然也可以这么厉害,当时看到出圈很好奇,就上手玩了下,第一步就踩坑,在折腾几回后,终于用上了,我想说真不错。这里就mark下基本的使用。

8月 1, 2025

了解Tailwind

最近一个开源项目需要做个H5版,决定试试Tailwind,这里mark下我对它的认识和使用后的感受。

7月 24, 2025

嵌套对象的keyof

需求 interface User { parent: { name: string; }; age: number; name: string; } type Column = { key: keyof User; }; const columns: Column[] = [ { key: 'name' }, { key: 'name1' }, { key:'parent.name' } ]; 解决办法 type Paths<T> = T extends object ? { [K in keyof T]: `${Exclude<K, symbol>}${"" | `.${Paths<T[K]>}`}` }[keyof T] : never type Column = { key: Paths<User>; }; 除了自己写Paths类型外,还可以使用现成的库,比如type-fest中的Path类型。

7月 22, 2025

入手红米note13 5G,千元以下手机,问题多多,但还要啥自行车

最近家人的手机过于老旧了,决定换新。之前因为她使用的是红米note系列,因此这次还是选择红米note相对新一点的型号,同一品牌的话,系统使用习惯就可以直接延续,不会额外增加学习成本。

7月 14, 2025

Anker充电宝召回:揽收困难后,我最终选了自行处理,且权益选了换新

之前俩Anker充电宝都属于召回批次,最近收到了短信,说建议自行处理,因此我决定按照建议进行处理。这里mark下流程。

7月 10, 2025