Smarter cache updates on mutation responses.

This commit is contained in:
Jayden Seric 2017-11-20 00:31:02 +11:00
parent a7cf818e15
commit 2951ad3434
2 changed files with 12 additions and 16 deletions

View File

@ -7,14 +7,12 @@ const MultipleUploader = ({ mutate }) => {
const handleChange = ({ target }) =>
target.validity.valid &&
mutate({
variables: {
files: target.files
},
refetchQueries: [
{
query: uploadsQuery
}
]
variables: { files: target.files },
update: (proxy, { data: { multipleUpload } }) => {
const data = proxy.readQuery({ query: uploadsQuery })
data.uploads.push(...multipleUpload)
proxy.writeQuery({ query: uploadsQuery, data })
}
})
return <FileInput multiple required onChange={handleChange} />

View File

@ -7,14 +7,12 @@ const SingleUploader = ({ mutate }) => {
const handleChange = ({ target }) =>
target.validity.valid &&
mutate({
variables: {
file: target.files[0]
},
refetchQueries: [
{
query: uploadsQuery
}
]
variables: { file: target.files[0] },
update: (proxy, { data: { singleUpload } }) => {
const data = proxy.readQuery({ query: uploadsQuery })
data.uploads.push(singleUpload)
proxy.writeQuery({ query: uploadsQuery, data })
}
})
return <FileInput required onChange={handleChange} />