记录 Github Copilot 惊讶到我的时刻

November 05, 2021

当时准备写个清理缓存的函数,当我写完函数名的时候,copilot 自动写完了剩余部分 除了写代码,它还可以自动帮你联想注释内容,还挺准确的 ...

解决 Xbox 在国内下载速度慢

October 23, 2021

今年入手了 Xbox Series X,发现 Xbox 在国内下载速度非常的慢,就算挂代理也很慢,无奈之下,发现遇到这个问题的玩家还不在少数,在 Github 上发现一个老哥写的脚本用于查找速度最快的 Xbox CDN 节点,高兴之余却发现...

开始使用 IndexNow

October 20, 2021

对于独立网站来说有一个很大的优点就是可以被各大搜索引擎收录,进而互联网上其他用户可以通过搜索引擎发现你的内容,所以对于独立网站的站长来说你需要确保网站上新发布的内容尽可能快的被搜索引擎的爬虫找到,而不是被动的等待爬虫找到你的内容,因为对于小...

Surge iOS 和 AmpliFi 的兼容性问题

October 17, 2021

默认情况下,在 iOS 设备上开启 Surge 的时候,打开 AmpliFi 会一直卡在 "Looking for AmpliFi" 的页面,如果不关掉 Surge 就始终无法找到路由器,体验非常不爽。 要解决这个问题,我尝试调整了 Su...

基于 S3 + Nginx + CDN 超低成本自建图床指南

October 08, 2021

图片托管是一个很常见的需求,本文用 Amazon S3 和 Cloudflare 举例,如何基于对象存储服务和 CDN 自建一个可靠的低成本静态文件托管服务。这套方案的核心是利用 S3 这类对象存储服务解决文件存储的可靠性和安全性,再利用 ...

使用 TypeScript 提升可维护性

September 15, 2021

合理使用 TS 的枚举类型最近在 Code Review 中发现还是有很多使用 TS 的开发同学并没有充分发挥 TS 枚举值的能力,代码中很容易见到 if(status === 1){} else if (status === 2){} 这...

从 Loading 动画出发改进 React 应用的用户体验

July 03, 2020

在 Web 1.0 时代,用户在不同的页面之间跳转基本上都是通过全量刷新页面来实现的,这个时候 Web 开发者基本上不用自己添加 Loading 效果,浏览器会有自己的 Loading 状态。不过进入 Web 2.0 时代就不一样了,因为这...

使用 Dart Sass 代替 Node Sass

July 08, 2019

2020-10-27 更新:Sass 官方已在 2020-10-26 正式宣布弃用 LibSass,并推荐使用 Dart Sass https://sass-lang.com/blog/libsass-is-deprecated为什么要换掉...

React 设计模式和思想

June 21, 2018

React 社区在近几年的发展过程中诞生了很多有趣的组件设计 "模式",通过合理的运用这些模式可以让我们写出更好用的 React 组件。比如,在不使用任何设计模式的情况下,要实现一个类似这样的 Tabs 组件最初的代码可能是这样的const...

关于我的博客

March 11, 2017

建立这个博客的初衷是用来分享和记录我的想法,同时希望这些内容能帮助到需要的人,另一方面,这里也是我的技术实验室,很多技术相关的 idea 会在这里进行实践应用。主要用到的技术栈:Node.jsPostgreSQLGraphQLReactTy...