React Native Apollo client.query Not Получение обновленных данных из синхронизации приложения - Dynamo DB - PullRequest
0 голосов
/ 25 мая 2018

Я использую оболочку Apollo для вызова запроса, используя this.props.client.query.Это мой код.У меня есть метод и оболочка по умолчанию для загрузки запуска при монтировании компонента.Моя политика кэширования для графической оболочки cache-and-network, так как приложение может работать в автономном режиме.Но когда я вызываю someMethod, реквизиты должны обновляться новыми данными.

someMethod = () => {
this.props.client.query({
  query: ListSubjects,
  options: {
    fetchPolicy: 'network-only',
    cachePolicy: { query: true, data: true },
  },
}).then(({ data }) => {
  console.log(data.listSubjects);
  this.props.client.writeQuery({
    query: ListSubjects,
    data,
  });
});
}
......
export default compose (
withApollo,
graphql(ListSubjects, {
options: {
  fetchPolicy: 'cache-and-network',
},
props: props => ({
  subjectList: props.data.listSubjects ? props.data.listSubjects.items : [],
  isLoading: props.data.loading,
  refreshing: props.data.loading,
  loadingStatus: props.data.loading ? I18n.t('loadingText.subjectDetails') : '',
}),
}),
.....
)(Component);

Когда я обновляю руководство по данным для aws и вызываю запрос, он возвращает кэшированные данные, а не новые данные с сервера.Мне нравится знать, где я ошибся в отношении политики кэширования.

...