Здесь проблема github в реакции-аполлоне, требующая возможности передать обратный вызов запросу: https://github.com/apollographql/react-apollo/issues/208
Обходной путь, поднятый в этой проблеме, заключается в основном в использовании componentWillReceiveProps (компонентDidUpdate, вероятно, был бы тем, чтовы бы использовали сейчас, или getDerivedStateFromProps, если вы просто хотите установить состояние).Немного раздражает, потому что вам придется передавать значение загрузки Query в качестве реквизита, чтобы вы могли войти в жизненный цикл.Вот как то так
<Query query={GET_DOG_PHOTO} variables={{ breed }}>
{({ loading, error, data }) => (
<LifecycleComp loading={loading} error={error} data={data} />
)}
</Query>
class LifecycleComp extends React.Component {
componentDidUpdate(prevProps) {
if (prevProps.loading && !this.props.loading) {
// perform callback
}
}
render() {
if (loading) return null;
if (error) return `Error!: ${error}`;
return (
<img ... />
)
}
}