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

时间:2019-08-06 13:17:22

标签: next.js

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

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

1 个答案:

答案 0 :(得分:4)

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

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

这将强制向服务器发送请求。如您所知,RouterLink尝试将所有内容保留在客户端。