在Nextjs中,如何以编程方式触发服务器端渲染?

我们知道Router.push()会触发客户端渲染。但是,如何以编程方式触发服务器端渲染到页面?

示例:我有一个登录模式,在提交时会发送一个api调用来检查用户数据。一旦获得用户可以的信息,我就想通过服务器端渲染来加载页面。

米亚2020/03/23 22:05:48

如果要在服务器端呈现页面,则不能使用Router导航至该页面,而Link应使用本机awindow.location功能。对于您的情况,从API获得响应后,您想触发重定向(就像用户单击了链接一样),因此应调用:

window.location.href = "https://{yourDestination}"

这将向服务器发出请求。正如你所经历的,RouterLink试图把一切都在客户端。