reactjs - Next.js 自动静态优化
问题描述
我正在阅读有关自动静态优化的内容,我遇到了这个小部分,上面写着:
所以根据这个 文档
在预渲染期间,路由器的查询对象将为空,因为在此阶段我们没有要提供的查询信息。水化后,Next.js 将触发对您的应用程序的更新,以在查询对象中提供路由参数。
注意:通过动态路由添加到使用 getStaticProps 的页面的参数将始终在查询对象中可用。
第一段说查询对象是空的,但 NOTE 部分说它总是有可用的参数。
那么这里适用什么规则呢?
解决方案
这来自文档中动态路由的警告部分
通过自动静态优化进行静态优化的页面将在不提供路由参数的情况下进行水合,即查询将是一个空对象 (
{}
)。
水化后,Next.js 将触发对您的应用程序的更新,以在查询对象中提供路由参数。
还可以看看这个问题,其中在水合之前物体为空的确切行为query
被共同作者讨论为正确行为。
推荐阅读
- python - Python - 如何从单个列表创建元组列表
- ios - 如何以编程方式更改 UIDatePicker 的选定日期颜色 - Swift 4?
- twig - 在 for 循环中调用宏
- scala - 为 Slick 使用单独的 ExecutionContext
- php - 如何在 PHP 中统计每个月的项目并附上日期?
- mongodb - 所有分布式数据库都设计为并行处理数据吗?
- c++ - 将函数指针转换为 const volatile 仅在 gcc 上失败(不是 clang 或 msvc)
- ubuntu - 如果 RabbitMQ 停止,则保留该进程.. 正常吗?
- pdf - iOS11如何在PDFKit中添加图片注释
- ruby - 'JSON.parse' 错误处理无效/非 JSON 格式