У меня есть запрос, который принимает массив идентификаторов в качестве параметра.В массиве я могу добавлять или удалять идентификаторы на основе выбранных документов. Проблема в том, что он не запускает запрос каждый раз, когда изменяется массив идентификаторов , но я не понимаю, почему.Я также пытался изменить запрос options.fetchPolicy
с network-only
и no-cache
, но он не работает.Это мой запрос:
const GET_DATA = gql`
query docs($selectedDocs: [ID]) {
docs(selectedDocs: $selectedDocs) {
_id
name
description
}
}
`;
И это функция рендеринга компонента:
render() {
const { selectedDocs } = this.props;
console.log(selectedDocs)
return (
<Query
query={GET_DATA}
variables={{ selectedDocs }}
fetchPolicy="network-only"
// fetchPolicy="no-cache"
notifyOnNetworkStatusChange
>
{({ loading, error, data, refetch, networkStatus }) => {
if (loading) return "Loading...";
if (error) return "Error!";
console.log(data);
return (
<div>
docs list
</div>
)
}}
</Query>
);
}
Это метод рендеринга родительского компонента:
render() {
const { selectedDocs } = this.state;
return (
<Docs
selectedDocs={selectedDocs}
/>
)
}