default.js

default.js 文件用于在 并行路由 (Parallel Routes) 中渲染回退内容,当 Next.js 无法在整页加载后恢复某个 插槽 (slot) 的活动状态时。

软导航 (soft navigation) 过程中,Next.js 会跟踪每个插槽的活动 状态(子页面)。然而,对于硬导航(整页加载),Next.js 无法恢复活动状态。在这种情况下,可以为不匹配当前 URL 的子页面渲染 default.js 文件。

考虑以下文件夹结构。@team 插槽有一个 settings 页面,但 @analytics 没有。

并行路由未匹配路由示意图

当导航到 /settings 时,@team 插槽会渲染 settings 页面,同时保持 @analytics 插槽当前的活动页面。

刷新页面时,Next.js 会为 @analytics 渲染 default.js。如果 default.js 不存在,则会渲染 404 页面。

此外,由于 children 是一个隐式插槽,您还需要创建一个 default.js 文件,以便在 Next.js 无法恢复父页面活动状态时为 children 渲染回退内容。

Props

params (可选)

一个包含从根段到插槽子页面的 动态路由参数 (dynamic route parameters) 的对象。例如:

示例URLparams
app/@sidebar/[artist]/default.js/zack{ artist: 'zack' }
app/@sidebar/[artist]/[album]/default.js/zack/next{ artist: 'zack', album: 'next' }

On this page