为什么组件查询执行时父查询不更新?

在我的应用程序中更新一个变量时(session.isLoading),useQuery的一个实例将更新,而在父级中找到的一个实例不会更新。

// NOTHING UPDATES on session.isLoading update
function App({ apolloClient,resetStoreToDefault }) {
    const { loading,error,data } = useQuery(GET_CURRENT_SESSION);

    // Handle Query Return
    if (loading) return null;
    if (error) console.log('error',error);
    const { session } = data;
    console.log('app session',session); 

    return (
        <Router history={history}>
            ...
            <Authentication/>
            ...
        </Router>
    );
}


// UPDATES on session.isLoading update
function Authentication(props) {
    const { loading,data } = useQuery(INITIALIZE_AUTHENTICATION_PAGE);

    // Handle Query Return
    if (loading) return <p>Loading ...</p>;
    if (error) console.log('error',error);
    const { authenticationFields,session } = data;
    console.log('auth session',session);

    updateSessionLoading({ variables: { loading: true } });

    return (
        ...
    );
}

预期:useQuery更新时,所有data实例将更新cache.session

wsw123wsw1 回答:为什么组件查询执行时父查询不更新?

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3169304.html

大家都在问