文章 · 前端工程
一套设计令牌,同时喂给 Web 与小程序
Web 和小程序各写一套颜色,改一次设计要动两个仓库,早晚会飘。把色彩、排版、圆角收敛成单一数据源,再用脚本产出两边要的格式,是唯一能长期成立的解法。
令牌只描述语义,不描述数值
不要定义「蓝色 #0071e3」,而是定义「主按钮底色」。数值会变,语义不会。等哪天品牌色换了,改的是令牌的取值,而不是满仓库的十六进制。
产出一层做适配
Web 侧输出 CSS 自定义属性,小程序侧输出 WXSS 变量与一份 JS 常量表。适配层是脚本生成的,不手写,这样两边永远同源。
ts
const tokens = {
'color-action': '#0071e3',
'radius-card': '14px',
}
// 一次定义,两边生成:tokens.css / tokens.wxss / tokens.ts圆角与间距也要进令牌
只收颜色是不够的。圆角、间距、字号阶梯同样会被各页面各写各的,最终呈现出来的「不一致」大多来自这几个值。把它们一并纳入,才能真的做到一眼看上去是同一个产品。
评论5
登录后参与评论,你的发言会署上自己的名字。
陈默作者@chenmo·2026-10-03
先占个位:文里的数字都是本地实测的,测试环境写在文末备注里,有疑问直接在这儿回。
程野@chengye·2026-10-04
这份清单可以直接拿去做评审模板了,覆盖面挺全。
姜堰@jiangyan·2026-10-05
命名那一条看着简单,但确实是评审里最常被提出来的问题。
童语@tongyu·2026-10-06
边界情况那段写得好,很多问题都是顺利路径跑通了就当完成了。
严冬@yandong·2026-10-07
状态管理这块我更倾向于能不放全局就不放,理解成本差很多。