在 SSR 和动态 URL 中使用 Apollo 进行查询(下一步.js)



我正在开发一个使用动态URL的项目,如[slug].js我想做的是:当有人访问一些URL时,domain.com/my-post 我的页面应该在graphql端点中查询可用的slug(包含SEO元标记等数据(,如果URL存在于我的数据库中,则加载页面。

我正在使用SSR,阿波罗钩子等。

我的问题是:在生产中,当有人在 facebook 上分享该 url 或类似的东西时,该 url (domain.com/my-post( 上的元标签将是空的(在查询查找可用 slug 之前(还是在元标签和内容已满之后? 考虑到当我使用 apollo 的 useQuery 时,我需要返回一些东西来处理该查询的加载和错误。当用户访问该 url 时,我会显示"正在加载"消息。

我的问题是:当有人在Facebook上分享该网址时,在生产中 或者类似的事情,该 URL 上的元标记 (domain.com/my-post( 将 是空的(在查询查找可用 slug 之前(或之后 元标签和内容已满?

这取决于您在哪里请求 slug。 如果您使请求服务器端(例如在getInitialProps内部(页面将在预渲染之前等待获取数据,这意味着当页面呈现时,它将使用元标记呈现。

如果您遵循 with-apollo 示例,则仅当您在组件树中更深地导入 HOC 时,它才应该在pages中使用 HOC 时,它显然应该呈现服务器端,getInitialProps将被忽略(因为它仅在页面中工作(

最新更新