2017-05-20 14 views
0

内部渲染:为什么在data.fetchMore期间data.loading不会变为true?

console.log('render', User.length, loading, networkStatus) 

当我打电话data.fetchMore两次,我得到:

render 100 false 7 
render 200 false 7 
render 300 false 7 

而我想到:

render 100 false 7 
render 100 true 1 
render 200 false 7 
render 200 true 1 
render 300 false 7 

它将按预期工作(loading为真)在此例如:

https://github.com/zeit/next.js/tree/v3-beta/examples/with-apollo

但不是在我的代码:

https://out-bkathectgx.now.sh/

https://github.com/lorensr/graphql-leaderboard/tree/a331af803b36ee2d65c85795d747e6cf4c83ba27

文件:

https://github.com/lorensr/graphql-leaderboard/blob/a331af803b36ee2d65c85795d747e6cf4c83ba27/components/ReputationLeaderboard.js

docs: data.networkStatus

docs: data.loading

回答

1

我遇到了同样的问题。原来,你必须在你的选择设置notifyOnNetworkStatusChangetrue决定参加:

http://dev.apollodata.com/react/api-queries.html#graphql-config-options-notifyOnNetworkStatusChange

PS!我有一个额外的问题,使用旧版本的apollo-clientreact-apollo,所以我不得不升级到最新版本(在编写本文时[email protected][email protected]),所以请确保您使用的是最新版本,以便可以使用这些选项。

相关问题