hydrateFallbackElement
如果你正在使用 伺服器端渲染,且你利用 部分補水,則可以在初始補水時,為未補水的路由指定要渲染的元素/元件。
hydrateFallbackElement={<MyFallback />}
),則可以改指定 HydrateFallback
元件 (例如,HydrateFallback={MyFallback}
),且 React Router 會在內部幫你呼叫 createElement
。
let router = createBrowserRouter(
[
{
id: "root",
path: "/",
loader: rootLoader,
Component: Root,
children: [
{
id: "invoice",
path: "invoices/:id",
loader: loadInvoice,
Component: Invoice,
HydrateFallback: InvoiceSkeleton,
},
],
},
],
{
future: {
v7_partialHydration: true,
},
hydrationData: {
root: {
/*...*/
},
// No hydration data provided for the `invoice` route
},
}
);
null
,因此建議你總是提供你自己的備用元素。