换品牌主色时前端改了 CSS 变量,另外还有十处要手动改:两个 SVG 的 fill、邮件模板、manifest 的 theme_color、安卓图标底色,漏两处页面上就出现两种蓝。第一次遇到会往复杂处想,其实漏掉的多是个小前提。

brand/
  logo.svg
  favicon.ico
  tokens.json
  icons/192.png

品牌资源没有统一入口,颜色和文件散在主题、构建产物、邮件模板里,每处各写一份字面值。改的时候只能靠全局搜索,搜不到的就漏。这一点先确认清楚,后面就不用反复试。

「品牌资源目录」相关的日志我一般连着看前后五分钟,单看一条报错经常判断不出是哪一步失败。新版本先放一台机器上跑一天再全量,问题一般在这段时间暴露。

备份不是备了就行,恢复一次才算数,很多备份文件打开才发现是空的。

具体做法是,建一个 assets/brand 目录 放 logo 图标和色值定义;颜色抽成 CSS 变量和一份 JSON 变量表;SVG 里的 fill 改成 currentColor 或者注入变量;构建时从变量表生成 manifest 和邮件模板里的值。

改完照着核一遍,改一次 tokens.json 重新构建 页面 邮件 manifest 三处颜色一起变。

作者 9823189