Javascript NextJS应用程序的动态页面上缺少元标记

Javascript NextJS应用程序的动态页面上缺少元标记,javascript,next.js,Javascript,Next.js,我有一个NextJS应用程序,下面是页面的布局: App --pages ----_app.js ----index.js ----company.js ----users ------[userID].js 所以,我有一个动态页面[userID].js,它通过路由器获取userID,以显示不同用户的信息。我正在使用next/head动态生成元标记。当我加载页面并检查元素时,我可以在那里看到元标记。但是当我为动态页面[userID].js“查看源代码”时,我看不到元标记。当我“查看源代码”时,

我有一个NextJS应用程序,下面是页面的布局:

App
--pages
----_app.js
----index.js
----company.js
----users
------[userID].js
所以,我有一个动态页面[userID].js,它通过路由器获取userID,以显示不同用户的信息。我正在使用next/head动态生成元标记。当我加载页面并检查元素时,我可以在那里看到元标记。但是当我为动态页面[userID].js“查看源代码”时,我看不到元标记。当我“查看源代码”时,我可以看到所有其他页面的元标记

有人知道这是为什么吗?我能做些什么来修复它


谢谢。

Next.js路由器是客户端路由器。如果您根据用户信息创建元标记(取决于Next.js路由器),它将添加到客户端

因此,您可以在DevTools元素面板中看到它,因为客户端JS已经执行,但在页面源代码中看不到它,因为它只是简单的服务器响应,没有JS执行


这听起来不像是一个需要解决的问题。但是,如果在第一次呈现时必须存在这些元标记,则可以使用
getServerSideProps
在服务器端呈现页面。但是,您将失去此页面的静态优化。

这似乎很奇怪。我认为
next.js
将在服务器端渲染中将所有内容包装在
中。你能展示一下你是如何在
[userID].js中添加元标记的吗?我也在努力解决这个问题。在使用动态路由的页面中,我通过
添加的元标记,即使只是硬编码的标记,也不会被拾取。