每个平台都重造的轮子
做原生,同一个日期选择器、同一个列表、同一个图表会被写三遍——每个系统一遍,每个 App 又一遍——因为每个目标都说自己的组件语言。复用等于复制粘贴,而复制粘贴等于漂移。
小程序组件市场把一个组件变成已发布、带版本的包。一份构建拖进任意程序,于是团队用共享部件拼装功能,而非重写它们。
组件市场是什么
运行时定义了一种跨宿主通用的组件格式,于是组件作者发布一次、消费者导入即可。微信的 WeUI 与扩展组件、支付宝的组件库都是市场式目录;npm 在开放 Web 上展示了同样的杠杆。一个共享、带版本的包意味着修复通过升版本号传播,而不是改每个 App。
差距在哪里体现
| 环节 | 原生(重写) | 小程序运行时(组件市场) |
|---|---|---|
| 组件来源 | 逐 App 复制粘贴 | 已发布包 |
| 版本化 | 手工、临时 | Semver,共享 |
| 修复传播 | 改每个 App | 升版本号 |
| 跨 App 复用 | 脆弱 | 即插即用 |
| 新功能 | 重写 | 组合 |
结果是一个你从中拼装的库,而非一堆你重写的代码。
为什么复用胜过重写
共享包意味着一个团队发布一次日期选择器,每个程序都受益,而不是十个 App 各养一个略有不同的副本。它也意味着安全与无障碍修复一次性落到所有地方,因为部件是共享的,而非分叉的。
Cross Mini App 如何落地
Cross Mini App 把程序跑在一个带组件市场的运行时上,于是跨平台组件发布一次、拖进任意程序。你用共享部件组合功能。你不再重写同一个轮子,而是把积木拼起来。
这就是零件目录与克隆衣柜之间的区别。