react apollo hooks

1、创建ApolloProvider来包装整个程序

TypeScript 复制代码
<ApolloProvider client={client}>
    <App />
<ApolloProvider>

2、useQuery查询

工作方式usequery将返回一个数组

TypeScript 复制代码
const {要返回的对象} = useQuery(传入参数)

实例

TypeScript 复制代码
const query = gql`
    query name {
        whatever {
            field
        }
    }
`

expoprt default function Pets () {
    const {data, loading, error } = useQuery(query)


}

3、useMutation突变

useMutation与useQuery不同,useQuery返回的是一个数组,不是对象

useMutation返回的数组中,第一个参数与useQuery不同,第二个参数即为useQuery的参数

TypeScript 复制代码
const [返回参数的数组] = useMutation(传递突变)

实例

TypeScript 复制代码
const [name, {data, loading, error}] = useMutation(...mutation)

//name为发生突变的实际函数
//执行name函数时,发生突变,而不是useMutation函数发生突变
TypeScript 复制代码
const query = gql`
    query name {
        whatever {
            field
        }
    }
`

expoprt default function Pets () {
    const {data, loading, error } = useQuery(query)
    const [name, {data, loading, error }] = useMutation(...mutation)

}

useQuery与useMutation的不同:

执行useQuery会直接进行查询

执行useMutation不会发生突变,突变是由useMutation中的name函数发生的,当执行name时,突变就会发生

相关推荐
今天不要写bug6 分钟前
基于elementUI实现一个可编辑的表格(简洁版)
前端·javascript·elementui
上优9 分钟前
Vue3纯前端同源跨窗口通信移动AGV小车
前端·vue.js·状态模式
h_k1008610 分钟前
Chrome 插件开发入门技术文章大纲
前端·chrome
一只小阿乐10 分钟前
vue-router 的实现原理
前端·javascript·vue.js·路由·vue-router
Zz_waiting.11 分钟前
案例开发 - 日程管理 - 第七期
开发语言·前端·javascript·vue.js·html·路由
writeone11 分钟前
9-10关于JS初学产生的问题
开发语言·javascript·ecmascript
一只小风华~14 分钟前
Vue:事件处理机制详解
前端·javascript·vue.js·typescript·前端框架
dy17174 小时前
element-plus表格默认展开有子的数据
前端·javascript·vue.js
2501_915918418 小时前
Web 前端可视化开发工具对比 低代码平台、可视化搭建工具、前端可视化编辑器与在线可视化开发环境的实战分析
前端·低代码·ios·小程序·uni-app·编辑器·iphone
程序员的世界你不懂8 小时前
【Flask】测试平台开发,新增说明书编写和展示功能 第二十三篇
java·前端·数据库