Electron 需要设置程序 appId 之后,才能正常在 Windows 下使用 Notification 功能 // windows 下需要设置这一项才能正常使用 Notification if (process.platform ==='win32') {if (app.…
rollup-plugin-css-only 目前还没有支持对生成的文件名添加基于文件内容的 hash 值,而这个操作在 Web 前端中又非常的常见和必要。 因此只能采用折中的解决办法了。 import css from 'rollup-plugin-css-only'; imp…
记账 记账确实是一件令人头疼的事情,枯燥的重复性记录工作很容易就让人放弃了。 好消息是,2020 年在我姐的悉心指导下,终于第一次做到了全年账目无误,也就是说我记的账对齐了! 很多人说记账可以帮自己开源节流,其实这有些过分夸大记账对于一般人的作用了。 我觉得记账最重要的作用就是可…
其实我很少写年终总结,不过 2020 年确实特别的一年,值得记录。 参照我经常阅读的一些人的年终总结方式,感觉将内容分类记述是比较好的方式,不显得冗余也不容易写成流水账。 2020 年我买了些什么 首先是大家最喜爱的购物环节,虽然疫情对经济有些影响,但是也不能忘了对生活的追求。(…
今天介绍一种我已经使用了很长时间的,针对现代浏览器的金额文本格式化方法。 这种方法使用了 Intl.NumberFormat (MDN) 这个 API。 以人民币为例 const amountFormatter = new Intl.NumberFormat('en-US', {…
注:文中 mac arm64、apple silicon、m1 皆指代采用 Apple 自研芯片的 mac。 早前我把自己的 Nodejs 版本管理工具切换到了 fnm,比 nvm 更快更简洁,比 n 更灵活是我选择它的原因。 不久前我的 mac 更新为了 m1 芯片的版本,随之…
首先向大家介绍一位我非常喜欢的 Web 前端工作者,hail2u,没错,一位日本友人。 说说为什么我会喜欢这位开发者。我从事前端开发工作也有接近 8 年时间了,在这 8 年里也经历了前端技术的飞速发展,对于国内的前端开发来说,这 8 年可以说是天翻地覆。 对于我个人来说,这 8 …
是的,guchengf.me 所有线上服务已经大步迈向 Docker ! 在即将进行下一次个人服务器搬迁的时候,我终于决定将现在服务器上所有的东西迁移到 Docker 内。其实在此之前已经经历过几次搬迁,为了避免后续无尽的搬迁体力工作,决定正式更换到 Docker 平台。 Doc…
TypeScript 3.0 中新增了一种 unknown 类型。 New unknown top type unknown is the type-safe counterpart of any. Anything is assignable to unknown, but u…
1. BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import C…
https://github.com/gucheen/i18n-render tiny i18n solution for tiny projects. Design The i18n-render's structure is key -> translation dictio…
Mac 下 terminfo 的问题(无法正确识别终端) 报错如: terminals database is inaccessible 修复方法: tic /path/to/kitty/terminfo/kitty.terminfo 这样就自动生成了 terminfo,位于 ~…
The Long Way To Angular(下文以 TLWTA 代指)系列停更很久,现在考虑继续。
方法一: 如果你的字体在 debian 的软件源中直接有维护,比如 Noto Sans CJK,那就可以直接使用 apt 安装: apt install fonts-noto-cjk 方法二: 如果需要手动安装,可以将字体放置到 /usr/local/share/fonts,然后…
随着现在高分辨率显示器(2K,4K)的普及,以及移动设备上屏幕的 ppi 的提高,网页上提供高分辨率的图片显得越来越重要。 在用 Webpack 构建的项目中,常见的解决方式,就是提供一张高分辨率的图片,然后在编译时压缩生成对应的低分辨率的版本,这种方法处理较为简单,但是也有一些…
举一个例子,在 electron 的 renderer 中,使用 ipcRenderer 来做通信,为了效率起见,一般使用异步的 send 方法. 这种情况下,如果是应答式的通信,main 进程发回的通信是不方便在同一个逻辑中完成的(当然也可以在这里 listen channel…
最近开发一个 Node 的命令行程序,其中会用到 child_process.spawn 来创建子进程做一些事情。 本地跑通了测试之后,到了 Travis 的环境下发现子进程创建不成功,debug 到 CI 服务器上之后,发现报了下面这个错误: spawn EACCES 查了一下…
最近在由于某个开发的移动平台的工作环境变成了 Firefox,在一次重新安装了 Ubuntu 系统之后,mp3 无法正常播放,提示错误大致如下 Warning: Cannot play media. No decoders for requested formats: audio…
一直以来,MAC 下鼠标的功能按键(比如侧键)都不能正常工作,罗技自己的驱动对鼠标型号的支持都非常有限,比如我手中的 G500s 和 G502 就不能正常支持,尝试过很多方案,都不能完美解决,最近发现了 SensibleSideButtons 这个应用,完美的解决了这个问题。 根…
1. Tray(托盘图片)消失 假如你把 tray 的实例变量定义在了函数内部(比如 app.on('ready', createWindow) 的回调函数内),那么当 JavaScript 引擎进行垃圾回收的时候,这个变量就会被销毁,这样 tray 的实例就没了,托盘图标就消失…