我有一个查询,将ID数组作为参数。在数组中,我可以根据所选文档添加或删除ID。
问题在于,每次ID数组更改时,它不会启动查询,但我不明白为什么。
我还尝试过使用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}
/>
)
}