برنامه نویسی

Apollo GraphQL – راه اندازی ReactJS

1. Dependencies را نصب کنید

npm install @apollo/client graphql

وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

آپولو کلاینت را پیکربندی کنید

// index.js or App.js

import React from 'react';
import { ApolloClient, InMemoryCache, ApolloProvider } from '@apollo/client';
import App from './App';

const client = new ApolloClient({
  uri: 'YOUR_GRAPHQL_ENDPOINT_URI',
  cache: new InMemoryCache()
});

ReactDOM.render(
  <ApolloProvider client={client}>
    <App />
  </ApolloProvider>,
  document.getElementById('root')
);

وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

کوئری های GraphQL را بنویسید

// queries.js

import { gql } from '@apollo/client';

export const GET_BOOKS = gql`
  query GetBooks {
    books {
      title
      author
    }
  }
`;

وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

4. از Query Component یا Hooks استفاده کنید
استفاده از قلاب useQuery:

import React from 'react';
import { useQuery } from '@apollo/client';
import { GET_BOOKS } from './queries';

const BookList = () => {
  const { loading, error, data } = useQuery(GET_BOOKS);

  if (loading) return <p>Loading...</p>;
  if (error) return <p>Error :(</p>;

  return (
    <div>
      {data.books.map((book, index) => (
        <div key={index}>
          <h3>{book.title}</h3>
          <p>{book.author}</p>
        </div>
      ))}
    </div>
  );
};

export default BookList;

وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

استفاده از مولفه Query:

import React from 'react';
import { Query } from '@apollo/client/react/components';
import { GET_BOOKS } from './queries';

const BookList = () => (
  <Query query={GET_BOOKS}>
    {({ loading, error, data }) => {
      if (loading) return <p>Loading...</p>;
      if (error) return <p>Error :(</p>;

      return (
        <div>
          {data.books.map((book, index) => (
            <div key={index}>
              <h3>{book.title}</h3>
              <p>{book.author}</p>
            </div>
          ))}
        </div>
      );
    }}
  </Query>
);

export default BookList;

وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

5. جهش ها و اشتراک ها

برای جهش‌ها و اشتراک‌ها، می‌توانید از قلاب‌های useMutation و useSubscription به ترتیب توسط Apollo Client استفاده کنید.

نوشته های مشابه

دکمه بازگشت به بالا