用途:为 Inertia Rails 应用提供性能优化指南,覆盖服务端 Props 与前端加载策略。
主要能力:Props 优化(只返回必要字段、用 lambda 惰性求值、defer 延迟非关键数据、optional 按需加载、always 始终包含);部分重载(router.reload 的 only/except);代码分割(Vite 的 import.meta.glob 懒加载或预加载);预取(Link prefetch 的 mount/hover/click、cacheFor、cacheTags 与失效);Instant Visits(指定 component 与 pageProps 立即渲染);无限滚动(InertiaRails.scroll 配合 Pagy/Kaminari,或 merge 手动实现);轮询(usePoll);Once Props(跨导航记忆、expires_in、fresh、key);资源版本控制;数据库查询优化(includes 预加载、select 精简列、缓存与 ETag);性能监控;WhenVisible 视口懒加载;滚动保持。
使用方式:在 Rails 控制器中通过 render inertia 与 InertiaRails.defer/optional/always/once/scroll/merge 等组织 Props,前端使用 @inertiajs/react 的 Deferred、InfiniteScroll、WhenVisible、usePoll 及 router 相关 API。
适用场景:需要降低首屏载荷、按需加载数据、优化长列表与实时更新的 Inertia Rails 项目。
限制:资料未提供具体版本兼容范围、性能基准数据与完整配置说明,部分 API 标注为 v3,实际可用性需以所用版本为准。