Blocks 与 Components:为什么换皮可以很小
MapleSprite 保留耐用组件,重写可抛弃区块,所以产品身份改变了,SaaS 底盘没有被推倒重来。
2026年6月15日
MapleSprite Team
MapleSprite 能在不重建底盘的情况下完成身份切换,是因为模板里有一条有用边界:
block 决定产品含义,component 只渲染形状。
Block 承载意图
src/blocks/hero.tsx、features.tsx、pricing.tsx 和 footer.tsx 现在讲的是 MapleSprite。它们读取 Paraglide 文案,选择产品图像,装配页面。
改版就应该发生在这里。
Component 保持耐用
src/components/site-header.tsx、pricing-table.tsx 和 shadcn primitives 不需要知道旧原型,也不需要理解 PSD 编译器。它们只渲染 props、状态和布局。
所以它们能挺过这次变化。
规则
如果一个文件知道产品故事,它可以被重写。如果它只知道如何渲染可复用界面,就让它无聊而稳定。
这不是审美问题。正因为有这条边界,MapleSprite 以后才能把编译器带回来,而不把它和导航、价格卡、营销文案缠在一起。