-
Notifications
You must be signed in to change notification settings - Fork 71
Open
Description
Current Behavior
In the DataConnect React library, query invalidation in mutations doesn't work as described when passing in a reference instance without parameters.
As described in the documentation, if I pass in just the reference to the query, it should invalidate all queries cached:
const createMovie = useDataConnectMutation(createMovieRef, {
invalidate: [getMovieRef],
});This will actually also trigger a TypeScript error:
Type 'GetMovieRef' is not assignable to type 'QueryRef<unknown, unknown> | (() => QueryRef<unknown, unknown>)'.
Type 'GetMovieRef' is not assignable to type '() => QueryRef<unknown, unknown>'.
Target signature provides too few arguments. Expected 1 or more, but got 0.ts(2322)
Even after ignoring the TS error, the query does not get invalidated after the mutation executes in the app.
However, it works as intended if a parameter is specified to invalidate a specific record:
const createMovie = useDataConnectMutation(createMovieRef, {
invalidate: [getMovieRef({ id: "1" })],
});Expected Behavior
Passing in a query reference without parameters to the invalidate option in mutations should invalidate ALL of its cached queries.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels
Type
Projects
Status
Opened