最近在处理一个项目的时候发现在某部 iPhone 的 Safari 上有页面无法正常访问,报错提示 Object.hasOwn
方法不存在。这基本上就是兼容性问题了,看了一下 iOS 的版本是 14.6,再一查 Object.hasOwn
在 iOS 上是从 15.4 才开始支持的。处理方案要么是把用了 hasOwn 的地方改掉(因为 Object.hasOwn
的平替方法很多,也不存在什么改的成本问题),要么就是在打包的地方配置兼容处理。如果兼容处理简单肯定是优先进行兼容处理,毕竟碰到不兼容的就改写起来也太折腾了。
在这个很多功能使用都要求 HTTPS 的浏览器环境下,一般站点使用 Caddy 配置代理真的很方便,不需要申请再手动配置 SSL 证书,更不需要考虑定期更新证书以免忘记更新导致站点访问报错。如果是想要了解怎么使用可以参考
Caddy is the first and only web server to use HTTPS automatically and by default.
Caddy 默认情况下会给所有的站点配置 HTTPS,对本地地址使用的是自签名的证书,对公共 DNS 解析的域名使用 ACME CA
(目前是 Let's Encrypt
今天看到一个介绍在旧安卓手机上搭建 Web 服务器的文章,其中提到的 Termux 感觉挺有意思的,去尝试一把感觉还可以的。
Termux
是一款 Android 终端模拟器和 Linux 环境运用程序,无需 root,安装后无需额外设置即可直接运行。自动安装最小的基本系统,使用 APT 包管理工具。
对于现在的项目来说,Eslint 基本上就是项目的标配之一。但有一点比较麻烦的就是,每次新建一个工程的时候都要安装一堆的依赖,然后再配置 .eslintrc
这类配置文件。直接用开源的某个插件可能配置又不是都满足需求,最后还是配置出来一个自己顺手的配置项,然后新项目又要重复再来一遍操作。
之前搞了一个 VuePress 的博客,也很长时间没怎么管了,其实偶尔还是会写一些东西的,但是都没有往上面放。其中有一个原因就是之前操作起来比较麻烦,要写完->提交->构建->更新,一套操作下拉非常费事。如果写完提交就不用管就会方便很多,如果只是想找个地方放一下,通过 GitHub 的 Actions 部署到 GitHub Pages 完全就够了。
JetBrains Mono
是为开发者设计的一款开源字体,通过对字体进行一些特殊的设计来提升开发者的使用感受。
对于公网环境的服务来说,安全问题很值得重视,一个公网服务器每天要被无数次的扫描,对于部署在公网的 web 服务来说,可能会被各种奇怪的请求不停的访问。这些奇怪的请求不但占用了宝贵的服务器资源(包括无用的日志,请求资源等),任由这些工具扫描更有可能会有某些漏洞被利用从而造成损失(部署在公网的数据库之类的一定要设置好安全的密码,不然再无用的测试库都有可能被人黑)。
假如你通过 nginx 配置了一个页面,原页面不方便加上认证或者仅仅只是想简单加个身份认证,可以考虑通过给 nginx 配置一个基本认证来实现。
Bit 简化了 UI 组件上的协作过程,维护和同步来自不同项目的独立组件。即使是在工程已经有部分组件的情况下再去使用 Bit 也还是比较方便的。