Update local school class cache after joining a class
This commit is contained in:
parent
a4a5e37268
commit
76fa510053
|
|
@ -1,5 +1,9 @@
|
||||||
mutation JoinClass($input: JoinClassInput!) {
|
mutation JoinClass($input: JoinClassInput!) {
|
||||||
joinClass(input: $input) {
|
joinClass(input: $input) {
|
||||||
success
|
success
|
||||||
|
schoolClass {
|
||||||
|
id
|
||||||
|
name
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -21,6 +21,7 @@
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import JOIN_CLASS_MUTATION from '@/graphql/gql/mutations/joinClass.gql';
|
import JOIN_CLASS_MUTATION from '@/graphql/gql/mutations/joinClass.gql';
|
||||||
|
import ME_QUERY from '@/graphql/gql/meQuery.gql';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
data: () => ({
|
data: () => ({
|
||||||
|
|
@ -40,6 +41,18 @@
|
||||||
input: {
|
input: {
|
||||||
code
|
code
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
update(store, {data: {joinClass: {schoolClass}}}) {
|
||||||
|
if (schoolClass) {
|
||||||
|
const data = store.readQuery({query: ME_QUERY});
|
||||||
|
if (data) {
|
||||||
|
data.me.schoolClasses.edges.push({
|
||||||
|
node: schoolClass,
|
||||||
|
__typename: 'SchoolClassNode'
|
||||||
|
});
|
||||||
|
store.writeQuery({query: ME_QUERY, data});
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}).catch(e => {
|
}).catch(e => {
|
||||||
console.debug(e);
|
console.debug(e);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue