23w33

August 21, 2023

subaru - 柏大輔

作曲 : 柏大輔

纯音乐,请欣赏

--:-- / --:--
  1. 1subaru柏大輔
  2. 2会いたい(想你)夏川りみ
  3. 3i always sad but my eyes smileL1VET..
  4. 4As It WasPREP

本周新收藏的歌,有四首。

工作

  • rsuite 时常会添加新的功能,但新功能文档什么时候加一直是个问题。 比如本周为 Calendar 组件新增了一个 cellClassName prop,我想在文档里加上它的使用示例。 如果在这个新 prop 被发布之前就在文档中添加示例的话,文档站构建是会失败的,因为线上文档站构建所依赖的 rsuite 是 npm 上的版本。 所以只好在周五发布之后再去另开 PR 添加文档,但是这样很容易忘。 参考此前在 VS Code 迭代计划中得到的启发,我打算尝试在每周一例行地对上一周 rsuite 发布的新功能进行文档更新。 这样有一个小缺点就是文档是隔了一个周末才更新的,不过这个可以暂且忽略,观察观察再说。
  • 给 DevOps 平台更新登录页图片用上了 CSS 的 min() 函数来控制 margin-top,好玩。
  • 在开发新功能的接口里尝试使用 Zod schema 来校验响应结果和推断 TypeScript 类型了。 相比原来手写响应的 TypeScript 类型然后用 as 进行转换变得更安全了。

开源和 Radar

  • 这周给 KeyLog 开发新功能的过程中,对 Chrome 扩展中 Content script、Popup 和 Background 三者的 scope 有了更深的认识。 比如,在 Content script 中是不可以使用 chrome.tabs API 的,而从 Popup/Background 中向 Content script 发送消息则必须指定 tabId。 Popup 被激活时,并不是在“当前激活的 tab”的 scope 下,如果需要在 Popup 中针对当前激活的 tab 进行操作,需要先通过 chrome.tabs.query API 查询当前激活的 tab。

    新功能还有些小问题,不过下周应该可以发了。

  • 本周加入 GitHub star 的一些有意思的仓库

    • kodoku 一个管理 RSS 订阅的工具,可以自己部署。
    • ai-town 一个使用 TypeScript 编写的 AI 小镇应用,可以观察 AI 角色自发的对话。可以自己部署,支持自定义人物设定。
    • stylelint-less 一组用于检查 Less 文件的 Stylelint 插件。
    • typestat 一个可用于将 JavaScript 代码转换为 TypeScript,或者改进 TypeScript 代码的工具。
    • red-otter 一个 webgl flex box 布局引擎,可以帮助你在 canvas 中创建 GUI
    • next-international 一个提供类型提示的 React 国际化库
    • cookieconsent 一个 vanilla consent 提示库。
    • svgomg 一个 SVGO 的 GUI

生活

  • 健身环大冒险每次都会询问当天的训练是要增加、减少还是保持强度,我每次都选保持现状。 这周某天在选完之后弹出了另一个问题:“每次都选择保持现状是否很麻烦”?让我有点意外。 看样子如果选择是的话以后应该就不会询问默认保持,这个设计还挺贴心。

  • 女朋友送了我一台 CD 播放器。这是我的第一台 CD 播放器,此前因为没有播放器,多年前买下的一张喜欢的 CD 一直没有拆封过。终于第一次听到了它的声音,很开心。

    CD 播放器

  • 在松坂书屋发现一个好玩又没用的柯南周边。

    口红架

  • 周末吃到了好吃的餐厅,开心。

总结

开心的一周。