在请求的过程中往往数据参数没有发生变化的时候都是使用缓存中的内容的。
所有怎么通过按钮请求后台的时候使用后台的数据呢
Graphql
请求
import gql from 'graphql-tag'
// this.$router.push({ name: 'roleInfo',query: { roleId: row.id, name: row.name }})
this.currentUser = row
this.Select = row.username
// 获取当前所有queue的列表数据
var getQueueByUserName = gql`
query ($userName:String!) {
user:userQueue(name: $userName){
username
queues{
id
}
}
queues{
id
name
}
}`
this.$apollo.query({
query: getQueueByUserName,
variables: {
userName: this.Select
},
fetchPolicy: 'network-only'
}).then(res => {
// this.Parse(res.data.queues)
this.allQueues = res.data.queues.map((item, index, arr) => {
return { key: item.id, label: item.name }
})
for (var queue in res.data.user.queues) {
this.queueKeys.push(res.data.user.queues[queue].id)
}
}).catch(err => {
console.log(err)
})
this.dialogQueueTableVisible = true
缓存
放在
fetchPolicy "cache-first" |"cache-and-network" | "network-only" |"cache-only" | "no-cache" | "standby".
如下的改动
this.$apollo.query({
query: getQueueByUserName,
variables: {
userName: this.Select
},
fetchPolicy: 'network-only'
})