横向对比
先上一行对比图:
Next.js | Remix | |
---|---|---|
SSG静态站点生成 | ✅内置 | 🚫不支持 |
SSR服务器端渲染 | ✅内置 | ✅通过 loader |
API 路由 | ✅pages/api/ 目录下 | 🚫Remix 就是路由,你可以更加灵活去进行自定义路由 |
Forms表单 | 🚫 非内置 | ✅ 内置,且功能强大 |
基于文件系统的路由管理 | ✅ 页面级 | ✅ 组件级 |
会话管理 | 🚫 非内置 | ✅ 内置 Cookie、Sessions |
禁用 JS | 🚫 未提供充分支持 | ✅ 静态页面路由 |
样式 | ✅ 提供了全局及组件级样式支持 TailwindCSS 等 | 🚫 非内置 |
嵌套布局 | 🚫 不支持 | ✅内置 |
i18n国际化 | ✅内置 | 🚫 非内置 |
图片优化 | ✅通过 next/image 组件 | ✅通过简单转换、备选质量等方式 |
谷歌 AMP | ✅内置 | 🚫 非内置 |
适配器 | Node.js Request 和 Response 接口 | Fetch API Request 和 Response 接口 |
Preload | 链接自动 | 非自动 |
异常处理 | 创建 404,500 等页面 | 使用 ErrorBoundary 组件局部抛错 |
Polyfill | fetch 、Object.assign 和 URL | fetch |
适用场景
Next.js
静态网站。这是其最大优势。在使用 TailwindCSS 等,可以更加灵活的制作出样式优美的页面及组件。拥有着较为完善的生态圈。
适合快速上手做项目。
Remix
管理后台,对于数据的加载、嵌套数据或者组件的路由、并发加载优化做得很好,并且异常的处理已经可以精确到局部级别。
或许是下一代的 Web 开发框架,需要折腾。
小结
- 数据复杂,内容较多(如可视化大屏): Remix
- 包含表单和会话的管理系统: Remix
- SEO 友好的网站: Next.js
- 纯静态部署: Next.js
- 国际化支持: Next.js
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。