我已经将以下代码(以及我能找到的所有其他相关代码)从GitHunt-React复制到我的应用程序。此代码来自CommentsPage.js:
const CommentsPageWithDataAndMutations = graphql(COMMENT_QUERY, {
options({ params }) {
return {
variables: { repoName: `${params.org}/${params.repoName}` },
};
},
props({ data: { loading, currentUser, entry, updateQuery } }) {
debugger;
return { loading, currentUser, entry, updateCommentsQuery: updateQuery };
},
})(CommentsPageWithMutations);
由于某些原因,在我的应用程序中,加载有时设置为true,有时是未定义的。当我在GitHunt-React(不是我的应用程序,但原始示例代码)中单步执行此代码时,调用堆栈显示所有内部的React函数,所以我无法将其追溯到声明loading
的GitHunt-React中的代码。此外,在GitHunt-React中对源代码进行文本搜索似乎没有出现设置loading.
的值的任何内容
在GitHunt-React中,代码的哪一部分负责声明loading
并设置其值?
答案 0 :(得分:1)
loading
的值直接来自Apollo Client,并通过react-apollo传递给UI(在本例中为GitHunt-React)。