Nextjs getInitialProps无法重新加载页面

时间:2020-03-24 17:19:19

标签: reactjs react-router next.js server-side server-side-rendering

我有一个需要帮助的问题。我目前有一个页面,我正在其中获取getInitialProps中的数据,并且在使用LinkRouter.push进行导航时可以正常工作。但是当我重新加载页面或将页面的URL共享给我的朋友时,它不会获取。

所以问题是,如果我在useEffect hook中获取数据,还是应该只添加add useEffect hook并使其在未定义资源的情况下进行获取,则是SEO的最佳实践吗?还能解决问题吗?

下面是我的getInitialProps

Page.getInitialProps = async (ctx: NextPageContext) => {
  const {
    query: { slug }, reduxStore,
  } = ctx;
  const { token } = nextCookies(ctx);
  try {
    await reduxStore.dispatch(fetchBookChapter(`${baseUrl}/chapters/${slug}`, token));
    return { token };
  } catch (error) {
    return redirectOnError(ctx);
  }
};

1 个答案:

答案 0 :(得分:0)

如果getInitialProps使用来自客户端的数据,则不会重新加载。