我正在迁移一个旧的应用程序到next.js,我有getServerSideProps
等待我的API调用的问题。我使用的是早期还原操作中流行的较旧的api中间件。本质上,中间件将调度一个REQUEST_TYPE
和一个SUCCESS_TYPE || ERROR_TYPE
。当等待动作完成时,它自然会在REQUEST_TYPE
之后移动。将API调用留在客户端。当,我希望它完成在服务器端。
export const getServerSideProps = wrapper.getServerSideProps(store => asnyc ({query}) => {
const { slug } = query;
await store.dispatch(makeAPICall(slug))
});
getServerSideProps
是服务器端代码,您无法访问任何客户端代码。因此,您不能在任何服务器端代码中调度您的操作,包括:getServerSideProps
,getStaticProps
,getStaticPaths
。
继续在getServerSideProps
中获取API,而不使用Redux。