reactjs 我正在React应用程序中使用ContextAPI,但无法访问组件中具有正确值的状态

wlsrxk51  于 2022-12-03  发布在  React
关注(0)|答案(1)|浏览(107)
useEffect(() => {
    getQuestionDetails();
    getAnswers();
}, []);

我在一个react函数组件中使用了上面的useEffect钩子,我正在调用异步函数,它使用axios从服务器获取数据。我使用上下文API中的一些状态值作为axios的http请求中的有效载荷。对于第一次渲染,我从上下文中正确获取状态值,但之后的值就不正确了。不仅useEffect内部的函数,而且useEffect外部的另一个函数也无法获得正确的状态值

这是第一次从上下文API中获取一些有效负载值的渲染:

这是在我重新加载同一页后,我没有从上下文中获取值:

我尝试从上下文API中为每个渲染获取正确的状态值,但我只为第一次渲染获取了正确的值,但在那之后,当我重新加载页面时,创建状态时分配的初始值就出现了。

i7uq4tfw

i7uq4tfw1#

useEffect(() => {
    getQuestionDetails();
    getAnswers();
});

像这样使用钩子。原因是钩子参数中的'[]'。它说只有当[]不同于[]时才重新调用钩子。

相关问题