default.js
default.js
文件用于在 并行路由 中渲染备用内容,当 Next.js 无法在完整页面加载后恢复 插槽 的活动状态时使用。
在 软导航 期间,Next.js 会跟踪每个插槽的活动状态 (子页面)。然而,对于硬导航 (完整页面加载),Next.js 无法恢复活动状态。在这种情况下,可以为不匹配当前 URL 的子页面渲染 default.js
文件。
考虑以下文件夹结构。@team
插槽有一个 settings
页面,但 @analytics
没有。
当导航到 /settings
时,@team
插槽将渲染 settings
页面,同时保持 @analytics
插槽的当前活动页面。
刷新时,Next.js 将为 @analytics
渲染一个 default.js
。如果 default.js
不存在,则会渲染一个 404
页面。
此外,由于 children
是一个隐式插槽,当 Next.js 无法恢复父页面的活动状态时,你还需要创建一个 default.js
文件来为 children
渲染备用内容。
属性
params
(可选)
一个包含从根段到插槽子页面的 动态路由参数 的对象。例如:
示例 | URL | params |
---|---|---|
app/[artist]/@sidebar/default.js | /zack | { artist: 'zack' } |
app/[artist]/[album]/@sidebar/default.js | /zack/next | { artist: 'zack', album: 'next' } |