Apollo React 문서 http://dev.apollodata.com/react/queries.html#basics에는 구성 요소가 표시 될 때 자동으로 가져 오는 예제가 있지만 버튼을 클릭하면 쿼리를 실행하고 싶습니다. 단추를 클릭 할 때 "다시"쿼리를 가져 오는 예를 볼 수 있지만 처음에는 쿼리를 원하지 않습니다. 돌연변이를 호출하는 방법이 있지만 쿼리를 어떻게 호출합니까? 여기에 설명 된대로Apollo GraphQL React - 클릭시 쿼리하는 방법?
26
A
답변
35
당신은 withApollo
고차원-구성 요소를 사용하여 아폴로 클라이언트에 대한 참조를 전달하여이를 수행 할 수 있습니다 https://www.apollographql.com/docs/react/basics/setup.html#withApollo
을 그런 다음 객체로 건네받는, 그래서 등에 client.query
를 호출 할 수
class MyComponent extends React.Component {
runQuery() {
this.props.client.query({
query: gql`...`,
variables: { ... },
});
}
render() { ... }
}
withApollo(MyComponent);
호기심에서 벗어나 클릭 이벤트에 대해 쿼리를 실행하는 목표는 무엇입니까? 아마도 기본 목표를 달성하는 더 좋은 방법이있을 것입니다.
검색 바에 이것을 사용하고 싶습니다. – kayla
부모에게 gql HOC가있는 구성 요소에 이것을 사용하면 부모 componentWillReceiveProps가 트리거됩니다. 이유는 모르겠다. 더 좋은 방법이 있습니까? 아마 희박 해. –
이것은 소품을 업데이트하지 않습니까? 왜? 결과가 성공적으로 나온 후에 어떻게 소품을 업데이트 할 수 있습니까? – CharlesS