我正在将Next.js用于我的React应用程序,因为它具有服务器端渲染。正如我检查的日志,这两种方法ComponentWillMount,并getInitialProps在服务器端运行两者。这些方法之间有什么区别吗?
ComponentWillMount
getInitialProps
我ComponentWillMount什么时候应该跑步getInitialProps?什么时候应该跑步?
我看不到Next.js提及此事。
GetInitialProps
GetInitialProps通常是一个异步函数,该函数对服务器上的异步操作很有用,并将数据作为道具传递给页面。
在Next.js中,它始终在服务器上运行,如果使用链接调用页面,则仅在客户端调用它。
它只能在页面中使用,而不能在组件中使用。
这是一个救生钩。在调用render方法之前调用它。在其中获取的数据不能作为道具传递。
既可以在组件中也可以在页面中调用它。这不是进行异步调用的好地方,因为它不等待异步操作完成。因此,如果它在服务器上运行并且在其中写入了异步操作,它将无法完成,并且会在不获取数据的情况下进入客户端。