我的博客旧主题是基于初学前端时写的 Fuji 主题构建的大改版,而在历经多次小修小补之后终于进入了维护不动的的状态。无论是 Hugo 模板本身,还是相配的 JS 和 CSS 都进入了完全的混乱状态。趁着近期有一点时间,是时候来一次重构了。
今日听闻 CloudFlare 的全新网页托管服务 CloudFlare Pages 正式进行开放测试,立刻进行了一番尝试。继前人 GitHub Pages、Netlify 和后人 Vercel (Zeit) 之后,终于又出现了一个免费用户完全不限带宽的服务。
Google Analytics 于近期推出了新版,将数据收集方式改为了向 analytics.google.com/g/collect 发送 POST 请求,在中国大陆自然就无法直接访问了,具体见 V2EX 相关讨论。考虑到本身对数据收集的需求不高,因此实验性的切换到了近期正在快速迭代更新的 umami。
analytics.google.com/g/collect
CloudFlare Workers 可以实现很多需求,通过它来代理访问非公开、未设置 CORS 头的 API 也在官方的示例项目内。不过由于免费 plan 的访问量限制以及性能限制等,一般用来给自己的实验性项目做一下简单代理。这里以 Bangumi 的 API 为例演示完整的实现。
有时我们需要对社区开发者向我们的项目提交的 pull request 进行一些修改,例如一些配置文件以及资源文件的补充等。这种情况下我们可以直接回复 request 提出修改的要求,但除此之外,我们也可以使用一种更简单的方案:直接向 pull request 提交 commit。
近期在补习 Node.js + MongoDB 的配合使用,目前已基本将后台管理界面完工。下一步是本人此前从未接触过的账户登录管理以及鉴权相关的内容,因此将学习过程中简单的完整实现记录下来便以后回顾。
近期在补习 Node.js + MongoDB 的配合使用,最初目标是实现一个接口用于 CRUD 分类数据。项目继续发展的时候发现除去分类数据以外,其他数据也需要用到几乎一模一样的接口。在路由中重复定义一大堆只有名字不同的接口对于学习用的小项目来说实在是有点没有必要,因此尝试学习了通用 CRUD 接口的实现。
自己给博客写的主题 Fuji 正在进行大改版,顺手也把夜间模式 (深色模式、黑暗模式?都差不多) 进行了改版以适配 prefers-color-scheme。
prefers-color-scheme
起初写主题的时候深色模式用了最基础的办法,也是兼容性最好的办法。给 body 加上 data-theme 属性,根据属性值是 light 还是 dark 判断主题。CSS 中独立写出两种配色,分别包括在 body[data-theme='light'] 和 body[data-theme='light'] 块内。
body
data-theme
body[data-theme='light']
直接维护两套样式的方法清晰直观,但会造成冗余代码,而且构建一时爽、维护火葬场。
原链接:/new-blog-relative-permalink/
/new-blog-relative-permalink/
为了统一内容链接层级的一致性,更新了博客文章的静态永久链接。
现链接:/post/2020/new-blog-relative-permalink/
/post/2020/new-blog-relative-permalink/
计划私下里给亲友们发布一些东西,考虑到用 WP 有点小题大做,为了方便就搭 Typecho 了。最初计划里是基于 SQLite 的,但是为了主题,还是回到了 MySQL。废话不多说,直接开始记录。