React 路由

React 路由器

虽然 Remix 作为多页应用程序工作,但当 JavaScript 加载时,它会使用客户端路由来提供完整的单页应用程序用户体验,并具有随之而来的所有速度和网络效率优势。

Remix 基于 React Router 并由同一个团队维护。这意味着你可以在你的 Remix 应用程序中使用 React Router 的所有功能。

这也意味着 Remix 的 90% 实际上只是 React Router:一个非常古老、非常稳定的库,也许是 React 生态系统中最大的依赖项。Remix 只是在它后面添加了一个服务器。

导入组件和 Hook

Remix 重新导出了 React Router DOM 中的所有组件和 Hook,因此你无需自己安装 React Router。

🚫 不要这样做

import { useLocation } from "react-router-dom";

✅ 做这个

import { useLocation } from "@remix-run/react";

扩展行为

一些组件和 Hook 已经扩展以与 Remix 的服务器渲染和数据获取功能配合使用。例如,Link 可以预取 Remix 中的数据和资源,而 React Router 版本则不能。

🚫 不要这样做

import { Link } from "react-router-dom";

// this won't do anything
<Link prefetch="intent" />;

✅ 做这个

import { Link } from "@remix-run/react";

// this will prefetch data and assets
<Link prefetch="intent" />;
文档和示例根据 MIT