在客户端渲染期间,服务器上运行的Next.js到底是什么?

bkkx9g8r  于 2023-05-28  发布在  其他
关注(0)|答案(1)|浏览(131)

我正在访问一个在客户端呈现的页面,并使用Apollo客户端从客户端的Web浏览器的API服务器中检索数据。

const { data, error, loading } = useQuery(...);

  console.log('data', data);

当我访问此页面时,客户端和Web服务器console.log非空数据。
为什么console.log调用填充了数据,即使是在服务器上?据推测,Web服务器没有调用API服务器(事实上,我很确定它甚至没有被授权)。浏览器是否将其控制台日志发送回服务器?
下一个V12

r7knjye2

r7knjye21#

通常情况下,Next.js prerendering会在服务器上运行useQuery钩子,但是useQuery会返回一个没有数据的存根。
在上面的例子中,第三方扩展(next-with-apollo)调用了函数getDataFromTree,它遍历了整个树,在服务器端和客户端运行所有查询。
标签:apollo-client in next.js with next-with-apollo VS the approach shown in next.js docs FAQ (no use of getDataFromTree)

相关问题