用途:在已采用 Cache Components 与 Partial Prefetching 的 Next.js 应用中,优化“点击前”客户端导航所预取的内容范围,让指定链接在点击后更快呈现可用 UI,同时不改变新鲜度与授权行为。它面向每条源链接(含具体路由与查询)、目标页面和触发方式构成独立契约,不承担框架采用职责。
主要能力:定义导航契约,区分应在点击前就绪的 UI、应等待导航的复用 UI,以及预取应在视口内还是意图后启动;复用既有生产测试装置(instant-nav.rig.md),在 production build 下用 instant() 测试记录当前行为,形成可信的 RED/GREEN 循环;做最小优化后验证差分(移除优化应回到 RED,重新应用应恢复 GREEN),并保留通过的测试作为回归覆盖;若新增可能被写入的缓存边界,需补充变更后读取的生命周期测试。
使用方式:先阅读捆绑指南 node_modules/next/dist/docs/01-app/02-guides/optimizing-prefetching.md,以其为预取阶段、prefetch={true}、会话专属 UI 和成本权衡的事实来源;按 rig-template.md 建立或复用生产装置;对同一源链接、目标与触发保持一测试一契约,先在未加锁脚手架中确认路径可达,再在 instant() 锁定下验证;自动化循环运行,只在涉及成本、新鲜度、授权或用户可见行为的真实产品分歧时询问用户;汇报时用点击前后用户所见内容说明,并注明预取是尽力而为、未完成时以 App Shell 兜底。
适用场景与限制:适用于已采用 Cache Components 与 Partial Prefetching、且 App Shell 能在 instant() 下提交的项目;未采用时应先用对应的 adoption 技能,App Shell 无法提交时先用 next-cache-components-optimizer。不应把单个链接策略扩展为全应用 Link 或缓存抽象;请求数、传输字节与缓存行为仅作测量,不属 instant() 契约;不得用私有 RSC URL 或 next-router-prefetch 等内部头分类请求;若无资料未提供的特定配置、价格或套餐信息,本文不做说明。