随笔
三星堆看展辅助小程序制作经验总结
总结看展辅助小程序的产品边界、内容组织、弱网缓存、发布分离和可复用方法。
1. 先定义产品边界,不要一上来做“大而全”
这次三星堆看展辅助小程序最有效的做法,是把 V1 明确收敛成“现场理解辅助工具”,而不是售票、社交、UGC 或完整知识库。产品核心不是替代博物馆官方体系,而是解决观众在展厅里的几个高频问题:
- 不知道从哪里开始看
- 看到了重点器物,但不知道该看什么
- 展厅网络弱,视频和图文容易失效
- 对神话、考古、器物关系有兴趣,但不想读学术论文
因此内容和页面都围绕四件事展开:
- 导引首页:先交代展览定位、主题线索、官方入口
- 展品索引:按看展顺序组织,而不是按百科分类组织
- 详情页:给出“看什么”“怎么理解”“还能延伸到哪里”
- 缓存中心:把弱网问题当作主流程,而不是异常流程
这个边界判断很关键。看展辅助小程序的价值,不在“信息总量最多”,而在“观众站在展柜前时最能用得上”。
2. 内容结构必须按“现场浏览动作”设计
三星堆项目里,内容不是先写长文再拆页面,而是先按现场动作组织:
- 先用主题总览建立观看框架
- 再用分段展品卡片承接实际观看顺序
- 每张卡片只回答少数关键问题
- 对高兴趣用户再开放延伸阅读
data/content.js 里的结构说明了这件事:
guide负责展览级框架prologueThemes负责主题组织browseIndex负责具体展品段落guideScript、viewingGuide、guideTips负责“站在现场能直接用”的解释hasExtensionReading负责知识深挖分流
这里最值得复用的经验是:每个展品卡不要试图解释一切,而要稳定回答下面四个问题:
- 这是什么
- 为什么重要
- 站在现场应该看哪里
- 它和前后展品、整条叙事线怎么连起来
3. 好的看展内容不是“堆知识”,而是“降理解门槛”
三星堆项目最成熟的内容方法,不是把资料改写成百科,而是把每段讲解改写成观众能立即使用的观察提示。
例如这类表达比“学术正确但不可用”的写法更有效:
- “先看眼眶、鼻梁、口部处理”
- “注意双手之间那个空位”
- “先看整体轮廓,再看人物,再看动物,最后看建筑”
这说明博物馆小程序内容生产要遵循三条规则:
- 先解释用户眼前能看到的东西,再补抽象意义
- 可以给联想入口,但必须区分“可靠事实”和“推测路径”
- 不要把观众逼进长篇文字,重点是帮他看懂展柜
三星堆题材尤其说明了一点:神话联想很有吸引力,但必须控边界。像纵目面具、青铜神树、太阳神鸟这类内容,可以提供《山海经》式联想卡,但要明确标注“这是理解入口,不是定论”。
4. 多媒体不是装饰,而是内容组织方式
这个项目没有把视频当作宣传素材,而是把视频切成 35 个“可消费的观展单元”。这比单条长视频更适合展厅场景,原因有三点:
- 用户在现场停留时间短,只会消费短段内容
- 展品理解本来就适合按单件器物或单组主题切分
- 弱网环境下,短片段更适合缓存、失败回退和分批下载
因此,一个博物馆看展小程序如果要上视频,最优先考虑的不是“拍得多完整”,而是:
- 是否能切成顺序清晰的短段
- 每段是否只服务一个理解目标
- 每段是否能独立缓存和独立失败恢复
5. 弱网和缓存不是补丁,是主设计对象
这次最重要的工程经验,不是页面写法,而是对微信运行环境的重新认识。
项目一开始用本地 127.0.0.1 提供视频联调,这对原型成立,但对真机、审核、发布都不成立。后续必须切换到:
- 云存储或合规 CDN
wx.cloud.init()cloud://作为资源标识wx.cloud.getTempFileURL()把资源 ID 转成临时可访问链接
真正有效的经验不是“把本地地址换成云地址”,而是接受微信小程序的资源链路和 Web 直觉不同:
- 资源 ID 不等于可直接播放地址
- 展示前通常要先取临时 URL
- 下载、播放、缓存、失败提示要分步骤处理
utils/cache.js 的做法值得直接复用:
- 缓存状态显式建模:
not_cached、queued、downloading、cached、failed_network、failed_storage、using_online_fallback - 下载流程串行化,避免并发过高
- 本地持久化失败时允许回退到临时文件路径
- 缩略图临时链接单独缓存,避免重复取 URL
这说明“博物馆现场导览”这类产品,缓存中心不是次要页面,而是核心能力页。
6. 发布版和原型版必须分离
这次复盘里最明确的工程教训,是原型目录和发布目录必须物理分开。
原型阶段可以容忍:
- 本地测试页
- 临时联调脚本
- 本地资源占位
- 试验性页面
发布阶段则必须单独收敛:
- 只保留真正参与上传和审核的代码
- 配齐云函数、云环境、配置文件
- 去掉本地大资源,控制主包体积
- 把调试能力改造成面向云链路的诊断页
否则很容易出现“本地能跑、开发者工具能预览、但真机和审核不过”的错觉。
7. 页面设计要围绕“导引-浏览-详情-缓存-来源”闭环
三星堆项目的页面结构很克制,但非常适合博物馆场景:
index:导引页,告诉用户这展怎么进入segments:展品列表页,承接实际浏览顺序detail:单段内容消费页readings:高兴趣用户的延伸阅读cache:现场稳定性保障sources:来源透明与可信度托底
这个结构说明:博物馆小程序不需要复杂信息架构,但必须有完整闭环。尤其 sources 页很重要,它给了内容可信度,也方便处理“哪些是官方事实、哪些是二次解读”的边界。
8. 最值得复用的通用方法
如果以后再做其他博物馆看展辅助小程序,这次三星堆项目最值得复用的是以下方法:
- 先做“主题线 + 现场顺序 + 单展品卡片”的三层内容结构。
- 每个展品只解决一个主要理解任务,不追求讲全。
- 把“看哪里”写进内容,而不是只写“是什么”。
- 把延伸阅读和主导览分层,避免主流程过重。
- 把弱网、缓存、失败提示当主流程设计。
- 从项目早期就按微信发布模型准备资源和配置。
- 原型、发布、诊断工具链分目录维护。
9. 一句话结论
三星堆看展辅助小程序的成功经验,不是做了很多功能,而是把“现场导览”“短段内容”“弱网可用”“解释门槛低”“官方事实和延伸解读分层”这几件事同时做对了。博物馆看展辅助产品要先解决观众站在展柜前的真实决策,再谈更复杂的互动和传播。