我想知道是否可以使用InMemoryCache的typePolicies来嵌套值现在您可以定义平面字段策略
new InMemoryCache({
typePolicies: {
Query: {
fields: {
hello: {
read() {
return 'hello'
},
},
hola: {
read() {
return 'hola'
},
},
},
},
},
})
// query flat local field using apollo
const QUERY_USER_PAGE = gql`
query UserPage {
hello
hola
}
`
如果我想要反映我的应用程序结构的typePolicies,这似乎是一个很好的做法,该怎么办
平面结构在大型项目的缩放和维护方面存在局限性。。
new InMemoryCache({
typePolicies: {
Query: {
fields: {
userPage: {
hello: {
read() {
return 'hello'
},
},
hola: {
read() {
return 'hola'
},
},
},
},
},
},
})
// query nested local field using apollo:
const QUERY_USER_PAGE = gql`
query UserPage {
userPage @client {
hello
hola
}
}
`
您需要在UserPage
而不是Query
中添加策略
new InMemoryCache({
typePolicies: {
UserPage: {
fields: {
hello: {
read() {
return 'hello'
},
},
hola: {
read() {
return 'hola'
},
},
},
},
},
})