R·ex / Zeng


音游狗、安全狗、攻城狮、业余设计师、段子手、苦学日语的少年。

分类“环境”下的文章

在 Mac 上实现雷蛇键盘幻彩可视化:灯随音动,炫出心动

为了应付音游“高手速、短键程、快速回弹”的特点,我入手了雷蛇的猎魂光蛛键盘。它除了可以满足音游的需求以外,还可以通过 Razer Synapse 3 实现灯光效果的个性化设置,例如通过幻彩可视化软件,让键盘的灯光随着音乐节奏变化。 Windows 上的幻彩可视化 这是官方的演示视频: 可以看到键盘有两个灯光效果,一个是按键区域被当成了屏幕,显示了音乐的频谱,另一个是键盘的边框灯光效果,...

发版辅助工具:因为规范,所以有效

业务扩张导致的问题 随着公司前几年的扩张,部门内的团队越来越多、业务越来越复杂。为了应对这种情况,前端团队使用了微前端,后端团队则使用了微服务。单个仓库的维护成本确实变低了,但这又带来了另外几个问题: 业务模块归属的团队可能会变化,例如“订单追踪服务”之前属于团队 A,但有一天拆到了团队 B; 很难整理出网状的模块调用关系,一个业务需求可能会改动到多个仓库的代码,例如我们对接一个新的物流...

一次 PNA 问题的定位经验(Chrome NetLog Viewer 入门)

作为一个电商平台,用户下单时,我们提供了一个页面让其选择自提点。一天下午,同事突然发现这个页面会多请求一遍接口,具体现象是: 先是一个 Pre-flight/OPTIONS 请求(因为接口跨域),但是这个接口失败了,从 F12 的 network 界面只能看到 net::ERR_FAILED ,看不到具体的错误信息,从 console 界面也没有任何报错。 然后是一个正常的 Pre-fl...

追根究底:不打开 DevTools 时,console.log 会不会内存泄漏?

太长不看:会。并且虽然 Chromium 有试图做限制,但因为方法不合适所以并没能解决问题。 JavaScript 的内存泄漏原因有很多,例如 DOM、计时器、闭包、意外的全局变量,以及本文的主题: console.log 。关于 console.log 会不会造成内存泄漏,掘金上面有大佬发过两篇文章: 千万别让 console.log 上生产!用 Performance 和 Mem...

多版本共存——巨型项目组件库升级的必经之路

Update 2023-07-19 目前已经有更简单的方式:PNPM 已经支持带有 alias 的 peer dependencies 查找,不需要用 hooks 了;通过实现跟 Ant Design 类似的 prefixCls 和 modifyVars 功能,也可以控制组件库选择器的前缀以避免样式冲突。 组件库升级是一个令开发者头痛的事情,即使像 Ant Design 这种...

盲调试解决 Zebra 打印机吞纸问题的经历

本来我以为,前端的工作内容只需要跟浏览器打交道,最多再做一做客户端和后端;万万没想到,如标题所示,我居然需要解决打印机的问题。 奇怪的需求 我们有一个画面单的平台,关于这个平台,我之前已经写过几篇文章,这里就不多提了。 一天,面单的产品突然把我拉到了一个群里,因为我们的业务 PM(BPM)接到了一个紧急需求:在我们开始跟某个卖家合作时,他们提出:我们在打印面单的时候,必须支持通过一个叫 Z...

用 OpenResty+OpenCC 让网站支持正体中文

想要查看本站的正体中文版本,点击页脚处的“正體中文”链接即可。 关于这篇文章的背景,真是说来话长…… 大概在八年前,我去 CTSC(国际信息学奥林匹克竞赛中国队选拔赛)打了个酱油(非集训队,只是去玩的),在那几天里,我接受了许多大佬们的培训,印象比较深刻的是 BYVoid 大佬,因为他在 PPT 中放了自己网站的链接,我点进去之后发现可以随意切换“简体”和“繁体”,而且似乎跟我以前见过的...

Go module 踩坑备忘

之前为了写 Go,我特地捣鼓了一下 VSCode 的 Go 配置,具体的经历可以看 这里 。 最近由于业务需求,需要新开一个 Go 的项目。听朋友说 Go 从 1.11 开始有了个叫 Modules 的新特性,于是打算看看能否用在我的新项目中。 为什么我对 Modules 这么感兴趣呢?因为写项目总是逃不开各种包管理,而之前 Go 不管是官方还是非官方的包管理器,都是基于 GOPATH ...

Webpack 打包体积优化:没有银弹

关于 Webpack 打包体积优化的问题,网上的文章已经有很多了,大概的方法有: webpack-bundle-analyzer ( source-map-explorer )、 CommonsChunkPlugin (v4.x 之后变成了 splitChunks 选项)、按需引入用到的库、Tree Shaking、CDN 等。之前我用这些方法对自己负责的某个项目做了一次优化,使得总体积不到...

Docker for Windows 无法共享磁盘的问题

太长不看:解决方案在 文章末尾 。 之前为了开发方便,我一直在用 Docker for Windows 作为我的开发环境。但突然有一天,Docker 突然无法在 Shared Drives 里面共享磁盘了,会报一句这样的提示: A firewall is blocking file Sharing between Windows and the containers. See docum...

搭建付费的 MXroute 并了解邮件相关的域名记录

本文并非为匿名人士所编写,第三方服务一般都会有审查机制,因此无法保证敏感数据的安全。 背景 之前我的域名邮箱 [email protected] 一直用的是国内的某个服务,最近觉得国内服务的限制比较多,于是打算将其迁移到国外服务。必要的要求有: 不暴露自己服务器的真实 IP 价格不要特别贵 不会被常见邮箱识别为垃圾邮件 界面尽量美观,需要支持 IMAP(或 POP3) 和 SM...

在 VSCode 中配置 Go 调试环境

前期准备 作为一个 Go 开发者,首先需要把系统中的 Go 的环境配好(包括环境变量和包管理器),具体怎么配这儿就不说了。不过 Go 的项目似乎都需要跑在 $GOPATH/src 下面,感觉有点反人类。Go 最推荐的调试器就是 Delve,安装和使用方法这儿也不说了,正确安装后应该可以在命令行中直接运行 dlv 命令。 想看结果的同学,可以直接跳到文章末尾,那儿有可以运行的配置。 ...

这是我们共同度过的

第 3164 天