1、創建ApolloProvider來包裝整個程序
<ApolloProvider client={client}><App />
<ApolloProvider>
2、useQuery查詢
工作方式usequery將返回一個數組
const {要返回的對象} = useQuery(傳入參數)
實例
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的參數
const [返回參數的數組] = useMutation(傳遞突變)
實例
const [name, {data, loading, error}] = useMutation(...mutation)//name為發生突變的實際函數
//執行name函數時,發生突變,而不是useMutation函數發生突變
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時,突變就會發生