devIndicators 允许您配置屏幕指示器,该指示器用于提供您在开发过程中正在查看的当前路由的上下文信息。
devIndicators: false | {
position?: 'bottom-right'
| 'bottom-left'
| 'top-right'
| 'top-left', // defaults to 'bottom-left',
},将 devIndicators 设置为 false 将会隐藏该指示器,但是,Next.js 仍会显示遇到的任何构建或运行时错误。
如果您预期某个路由是静态的,但指示器将其标记为动态的,则该路由很可能已选择退出静态渲染。
您可以通过使用 next build --debug 构建您的应用程序,并检查终端中的输出,来确认路由是 静态的 还是 动态的。静态(或预渲染的)路由将显示 ○ 符号,而动态路由将显示 ƒ 符号。例如:
Route (app)
┌ ○ /_not-found
└ ƒ /products/[id]
○ (Static) prerendered as static content
ƒ (Dynamic) server-rendered on demand路由可能选择退出静态渲染的原因有两个:
检查您的路由是否存在任何这些情况,如果您无法静态渲染该路由,那么请考虑使用 loading.js 或 <Suspense /> 来利用 流式传输。
当从页面导出 getServerSideProps 或 getInitialProps 时,它将被标记为动态。
| 版本 | 变更 |
|---|---|
v16.0.0 | appIsrStatus、buildActivity 和 buildActivityPosition 选项已被移除。 |
v15.2.0 | 改进了屏幕指示器,新增 position 选项。appIsrStatus、buildActivity 和 buildActivityPosition 选项已被弃用。 |
v15.0.0 | 新增静态屏幕指示器,带有 appIsrStatus 选项。 |