如何获取_app.js页面中组件的初始数据?



我有一个导航栏,有一个动态的道具和这个道具的数据应该从API在getStaticProps获取。导航栏应该显示在我的网站的所有页面。所以最好的方式来显示导航栏在我的网站的所有页面是把它放在_app.js组件。但我想使用getStaticProps方法来获取这些数据!问题是_app.js没有这个特性。我所有的页面都是静态呈现的。所以如果我使用getInitialProps方法在_app.js页面,我失去了自动静态优化,我不想要它。另一方面,我不想从客户端获取数据。那么在这种情况下我该怎么做呢?你有什么建议?注意:我在互联网上搜索了很多,我在Stack Overflow中看到了很多问题,但我找不到我想要的。

从这个问题和其他问题的答案,我认为我没有办法,我应该在使用布局和getInitialProps之间做出选择。但我有个主意。例如,我可以每60秒在服务器上获取数据,然后将获取的数据存储在json文件中。然后我可以在我的导航栏组件中导入json文件并使用导航栏组件的最新数据。你觉得这个主意怎么样?我怎么能在下一个js实现这个想法?再次感谢您的帮助。

您可以使用React上下文来获取其他组件中需要的数据。用页面组件内部的数据填充它,然后在其他组件中使用这些数据。

最新更新