2016-11-11 13 views
0

私は付属のアポロクエリと親コンポーネントを持っている:Apollo GraphQL:子コンポーネントが親クエリを再実行しますか?

const withData = graphql(MY_QUERY, { 
    options({ userID }) { 
     return { 
      variables: { _id: userID} 
     }; 
    }, 
    props({ data: { loading, getOneUser } }) { 
     return { loading, getOneUser }; 
    }, 
}); 

export default compose(
    withData, 
    withApollo 
)(NavigatorsList); 

export { getOneUser_QUERY }; 

私はレンダリング機能に埋め込まれuserPhotoと呼ばれる子コンポーネント持っている:子コンポーネントがないと

return (
     <div> 
      <userPhoto /> 
      [.....] 
     </div> 
     ) 

を、 withData GraphQL関数は、loading == trueに1回、データが返されてもう一度実行されます。

子コンポーネントを含むと、withData GraphQL関数はの3回を実行します。 3回目のgetOneUserは定義されておらず、コンポーネントがエラーをスローします。

これを修正するにはどうすればよいですか?

事前にすべての情報に感謝します。

答えて

0

固定。エラーをスローしていない子コンポーネントに構文エラーがありましたが、クエリが2回以上実行されていました+他のさまざまな異常が発生しました。

関連する問題