该技能整理 Remix 在 2025-2026 年的现代最佳实践,重点是从 Remix v2 向 React Router v7 迁移,并为 Remix v3 做准备。资料指出 React Router v7 已包含全部 Remix 特性,新项目应直接从 React Router v7 开始;迁移现有 v2 应用可使用命令 npx codemod remix/2/react-router/upgrade,并建议在 remix.config.js 或 vite.config.ts 中启用 v7 future flags。
数据加载采用服务端优先模型:Loader 在服务端取数,Action 在服务端变更数据,组件只渲染 Loader 提供的数据,避免不必要的 useEffect 客户端请求。变更操作推荐使用 HTML Form 或 Remix <Form>,而非 onClick,这样无需 JS 也能工作并自动处理竞态条件;同时强调渐进增强,先保证无 JavaScript 可用,再由 Remix 自动水合为 SPA 体验。
错误处理方面,建议在嵌套路由中放置细粒度 ErrorBoundary,避免局部失败导致整页崩溃;预期错误(如 404、401)用 throw new Response(...),意外错误(500)交给最近的 ErrorBoundary;表单校验错误应从 Action 返回而非抛出,以保留用户输入,并通过 useActionData 读取。
性能优化包括在 Loader 中输出 Cache-Control 响应头缓存公开数据,以及使用 defer 对慢数据(如第三方 API)进行流式渲染,配合 <Suspense> 展示。资料还列出 React Router v7 迁移指南、Future Flags 文档与 Remix 路由指南作为参考。限制方面,资料未提供具体版本号、安装依赖、收费或平台信息。