04 · 设计 · 组件与颜色

三种红同时存在时,没人知道哪一种是作废

设计系统设计师统一令牌、组件和命名。同一含义只能一种表达;某一块屏读不读得清,仍是 UI 设计师的事。

组件和色板放在一起

状态色:危险、警告、成功、信息只各有一种。作废用危险色加文字,不靠新的红。

单据组件:列表、详情、待办、空状态从同一套来。新单必须先声明为什么不能复用。

命名:设计稿和代码用同一个组件名。叫法不同的,走查时视为两套。

设计系统设计师减少的是分叉,不是增加页面装饰

多个设计师和多个前端同时做收货、报销、报工时,最容易各自做出一套表格、一种红、一种空状态文案。设计系统设计师的特点是有权说不。新组件必须证明现有组件在视距、信息密度或交互上做不到,审美偏好不构成理由。他维护的是令牌和用法:颜色代表什么、间距用哪一档、按钮哪种层级是主行动。文档如果只贴效果图、不写禁止项,系统仍然会分叉。

他不替代某个页面的 UI 设计师。页面设计师负责那块屏在车间或办公室读不读得清。设计系统设计师负责下一张单来的时候,读法没有变成另一种。两人冲突时,以「同一含义一种表达」为先,页面可以在密度上做变体,但变体要登记,不能私下复制一份改色。

怎样验收一套系统真的被用上

验收不看组件库里有多少个按钮,看新需求是否还在库外重新画表。设计系统设计师每个迭代抽查新增页面:危险操作用的颜色是否来自危险令牌,空状态是否区分了无数据、无权限和加载失败,表单错误是否出现在字段旁而不是只在顶部弹一次。抽查失败就退回,不在上线后补「统一一下」。

命名是另一条验收。设计稿叫「主按钮」,代码叫 btn-primary,文档叫「强调按钮」,三个名字指着同一个组件,新人会做出第四个。他要求设计稿和文档使用同一个名字,代码命名在文档里写清对应关系,并在评审里当场改正,而不是记一笔债务。

三种红的来历和收束

某项目同时有后台和门店。作废在后台是砖红,促销在门店是正红,报损又私自开了第三种红。店员把促销标成的商品当成作废退回。设计系统设计师把危险固定为一种令牌,促销改用品牌辅助色并强制带「促销」二字,门店页面里私自定义的红被删除。之后新的报损单直接复用危险令牌,没有再开色值讨论。纸上作废要不要文字章、章盖在哪一格,交给视觉设计师打样,本岗不写打印操作。

如果当时只把三种红放进品牌手册让大家「尽量用第一种」,第四种会在下一个页面出现。设计系统的责任是让错误的色值进不了屏幕组件,而不是靠自觉。

新页面立项时,设计系统设计师先给一张复用清单:用哪一个列表、哪一种空状态、哪一档主按钮。清单写不出,说明页面目标还不清楚,不应该先画视觉。他用清单把「先做个特别的」挡在开工之前。特别的需求可以存在,但必须在清单旁边写明它破坏了哪条旧规则,以及旧页面要不要一起改。不写这一句,系统里会长期留着两种正确。

回到时间线

如果同一含义有两种颜色,先告诉设计系统

先收成一种,再做新页面。