Rumah hujung hadapan web tutorial js Cache data bercantum menggunakan React Query dan pangkalan data

Cache data bercantum menggunakan React Query dan pangkalan data

Sep 27, 2023 am 08:01 AM
pangkalan data Cache bercantum react query

使用 React Query 和数据库进行数据缓存合并

Gunakan React Query dan pangkalan data untuk penggabungan cache data

Pengenalan:
Dalam pembangunan bahagian hadapan moden, pengurusan data adalah bahagian yang sangat penting. Untuk meningkatkan prestasi dan pengalaman pengguna, kami biasanya perlu menyimpan cache data yang dikembalikan oleh pelayan dan menggabungkannya dengan data pangkalan data tempatan. React Query ialah perpustakaan caching data yang sangat popular yang menyediakan API yang berkuasa untuk mengendalikan pertanyaan, caching dan mengemas kini data. Artikel ini akan memperkenalkan cara menggunakan React Query dan pangkalan data untuk penggabungan cache data, dan memberikan contoh kod khusus.

Langkah 1: Pasang dan konfigurasikan React Query
Mula-mula, kita perlu memasang React Query. Buka terminal dan laksanakan arahan berikut:

npm install react-query
atau
yarn add react-query
Seterusnya, buat fail konfigurasi untuk React Query dalam projek kami. Buat fail bernama react-query-config.js dalam direktori src dan tambah kandungan berikut:

import { QueryClient, QueryClientProvider } daripada 'react-query';

const queryClient = new QueryClient();

export const QueryClientProviderWrapper = ({ children }) => (

{children}
Salin selepas log masuk


);
Di sini kami mencipta contoh bernama QueryClientProvider dan menetapkannya Dengan cara ini kita boleh menggunakan React Query sepanjang projek.

Langkah 2: Cipta API data
Kini kita perlu mencipta API data untuk mendapatkan data pada pelayan dan cachekannya ke dalam React Query. Katakan API kami menyediakan kaedah getItems() yang mendapat senarai item dan mengembalikan tatasusunan yang mengandungi semua item. Buat fail bernama api.js dalam direktori src dan tambah kandungan berikut:

import { queryClient } daripada './react-query-config';

export const getItems = async () => Dapatkan data item daripada pelayan
const response = await fetch('/api/items');
const data = await response.json(); , data);

kembali data;

};
Di sini kami menggunakan kaedah fetch() untuk mendapatkan data daripada pelayan dan kaedah queryClient.setQueryData() untuk cache data ke dalam React Query.

Langkah 3: Buat API pangkalan data
Seterusnya, kita perlu mencipta API pangkalan data untuk mendapatkan data daripada pangkalan data tempatan. Katakan pangkalan data kami menyediakan kaedah getItemsFromDatabase() untuk mendapatkan senarai item dalam pangkalan data dan mengembalikan tatasusunan yang mengandungi semua item. Cipta fail bernama database.js dalam direktori src dan tambahkan kandungan berikut:

export const getItemsFromDatabase = () => {

// Dapatkan data item daripada pangkalan data
const item = ...

return item ;
};
Dalam aplikasi sebenar, anda perlu melaksanakan kaedah getItemsFromDatabase() mengikut jenis pangkalan data dan perpustakaan sepadan yang anda gunakan.

Langkah 4: Gabungkan Data
Kini, kita boleh menggunakan React Query dan API pangkalan data untuk menggabungkan data. Dalam komponen kami, kami menggunakan cangkuk useQuery() untuk mendapatkan data dan cangkuk useMutation() untuk mengendalikan kemas kini kepada data. Berikut ialah komponen contoh asas:

import { useQuery, useMutation } daripada 'react-query';

import { getItems, getItemsFromDatabase } from './api';

const ItemList = () => Gunakan useQuery hook untuk mendapatkan data

const { data: serverData } = useQuery('item', getItems);
const { data: databaseData } = useQuery('itemsFromDatabase', getItemsFromDatabase);

// Gunakan useMutation hook untuk memproses Data kemas kini
const { mutate } = useMutation(() => {

// 在这里使用数据库API更新数据
Salin selepas log masuk

});

// Cantumkan data cache dan data pangkalan data
const mergedData = [...serverData, ...databaseData];

return (

<div>
  {mergedData.map((item) => (
    <div key={item.id}>{item.name}</div>
  ))}
</div>
Salin selepas log masuk

);
};

Di sini, kami menggunakan dua cangkuk useQuery untuk mendapatkan data daripada pelayan dan pangkalan data masing-masing (dengan menghantar 'item' dan 'itemFromDatabase' sebagai kunci pertanyaan). Kami kemudian menggunakan cangkuk useMutation untuk mengendalikan kemas kini kepada data. Akhir sekali, kami menggabungkan data cache dengan data pangkalan data dan memaparkannya dalam komponen.

Ringkasan:

Menggunakan React Query dan pangkalan data untuk penggabungan cache data boleh meningkatkan prestasi aplikasi dan pengalaman pengguna. Dalam artikel ini, kami mempelajari cara memasang dan mengkonfigurasi React Query serta menggunakan React Query dan API pangkalan data untuk mendapatkan dan mengemas kini data. Saya harap artikel ini membantu dan jika anda mempunyai sebarang pertanyaan, sila tanya!

Atas ialah kandungan terperinci Cache data bercantum menggunakan React Query dan pangkalan data. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Arahan sembang dan cara menggunakannya
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Bagaimanakah bahasa Go melaksanakan operasi penambahan, pemadaman, pengubahsuaian dan pertanyaan pangkalan data? Bagaimanakah bahasa Go melaksanakan operasi penambahan, pemadaman, pengubahsuaian dan pertanyaan pangkalan data? Mar 27, 2024 pm 09:39 PM

Bahasa Go ialah bahasa pengaturcaraan yang cekap, ringkas dan mudah dipelajari Ia digemari oleh pembangun kerana kelebihannya dalam pengaturcaraan serentak dan pengaturcaraan rangkaian. Dalam pembangunan sebenar, operasi pangkalan data adalah bahagian yang sangat diperlukan Artikel ini akan memperkenalkan cara menggunakan bahasa Go untuk melaksanakan operasi penambahan, pemadaman, pengubahsuaian dan pertanyaan pangkalan data. Dalam bahasa Go, kami biasanya menggunakan perpustakaan pihak ketiga untuk mengendalikan pangkalan data, seperti pakej sql yang biasa digunakan, gorm, dsb. Di sini kami mengambil pakej sql sebagai contoh untuk memperkenalkan cara melaksanakan operasi penambahan, pemadaman, pengubahsuaian dan pertanyaan pangkalan data. Andaikan kami menggunakan pangkalan data MySQL.

Bagaimanakah Hibernate melaksanakan pemetaan polimorfik? Bagaimanakah Hibernate melaksanakan pemetaan polimorfik? Apr 17, 2024 pm 12:09 PM

Pemetaan polimorfik hibernate boleh memetakan kelas yang diwarisi ke pangkalan data dan menyediakan jenis pemetaan berikut: subkelas bercantum: Cipta jadual berasingan untuk subkelas, termasuk semua lajur kelas induk. table-per-class: Cipta jadual berasingan untuk subkelas, yang mengandungi hanya lajur khusus subkelas. union-subclass: serupa dengan joined-subclass, tetapi jadual kelas induk menggabungkan semua lajur subclass.

iOS 18 menambah fungsi album 'Dipulihkan' baharu untuk mendapatkan semula foto yang hilang atau rosak iOS 18 menambah fungsi album 'Dipulihkan' baharu untuk mendapatkan semula foto yang hilang atau rosak Jul 18, 2024 am 05:48 AM

Keluaran terbaharu Apple bagi sistem iOS18, iPadOS18 dan macOS Sequoia telah menambah ciri penting pada aplikasi Photos, yang direka untuk membantu pengguna memulihkan foto dan video yang hilang atau rosak dengan mudah disebabkan pelbagai sebab. Ciri baharu ini memperkenalkan album yang dipanggil "Dipulihkan" dalam bahagian Alat pada apl Foto yang akan muncul secara automatik apabila pengguna mempunyai gambar atau video pada peranti mereka yang bukan sebahagian daripada pustaka foto mereka. Kemunculan album "Dipulihkan" menyediakan penyelesaian untuk foto dan video yang hilang akibat kerosakan pangkalan data, aplikasi kamera tidak disimpan ke pustaka foto dengan betul, atau aplikasi pihak ketiga yang menguruskan pustaka foto. Pengguna hanya memerlukan beberapa langkah mudah

Apr 09, 2024 pm 12:36 PM

HTML tidak boleh membaca pangkalan data secara langsung, tetapi ia boleh dicapai melalui JavaScript dan AJAX. Langkah-langkah termasuk mewujudkan sambungan pangkalan data, menghantar pertanyaan, memproses respons dan mengemas kini halaman. Artikel ini menyediakan contoh praktikal menggunakan JavaScript, AJAX dan PHP untuk membaca data daripada pangkalan data MySQL, menunjukkan cara untuk memaparkan hasil pertanyaan secara dinamik dalam halaman HTML. Contoh ini menggunakan XMLHttpRequest untuk mewujudkan sambungan pangkalan data, menghantar pertanyaan dan memproses respons, dengan itu mengisi data ke dalam elemen halaman dan merealisasikan fungsi HTML membaca pangkalan data.

Tutorial terperinci tentang mewujudkan sambungan pangkalan data menggunakan MySQLi dalam PHP Tutorial terperinci tentang mewujudkan sambungan pangkalan data menggunakan MySQLi dalam PHP Jun 04, 2024 pm 01:42 PM

Cara menggunakan MySQLi untuk mewujudkan sambungan pangkalan data dalam PHP: Sertakan sambungan MySQLi (require_once) Cipta fungsi sambungan (functionconnect_to_db) Fungsi sambungan panggilan ($conn=connect_to_db()) Laksanakan pertanyaan ($result=$conn->query()) Tutup sambungan ( $conn->close())

Bagaimana untuk mengendalikan ralat sambungan pangkalan data dalam PHP Bagaimana untuk mengendalikan ralat sambungan pangkalan data dalam PHP Jun 05, 2024 pm 02:16 PM

Untuk mengendalikan ralat sambungan pangkalan data dalam PHP, anda boleh menggunakan langkah berikut: Gunakan mysqli_connect_errno() untuk mendapatkan kod ralat. Gunakan mysqli_connect_error() untuk mendapatkan mesej ralat. Dengan menangkap dan mengelog mesej ralat ini, isu sambungan pangkalan data boleh dikenal pasti dan diselesaikan dengan mudah, memastikan kelancaran aplikasi anda.

Petua dan amalan untuk mengendalikan aksara Cina bercelaru dalam pangkalan data dengan PHP Petua dan amalan untuk mengendalikan aksara Cina bercelaru dalam pangkalan data dengan PHP Mar 27, 2024 pm 05:21 PM

PHP ialah bahasa pengaturcaraan bahagian belakang yang digunakan secara meluas dalam pembangunan laman web Ia mempunyai fungsi operasi pangkalan data yang kuat dan sering digunakan untuk berinteraksi dengan pangkalan data seperti MySQL. Walau bagaimanapun, disebabkan kerumitan pengekodan aksara Cina, masalah sering timbul apabila berurusan dengan aksara Cina bercelaru dalam pangkalan data. Artikel ini akan memperkenalkan kemahiran dan amalan PHP dalam mengendalikan aksara bercelaru bahasa Cina dalam pangkalan data, termasuk punca biasa aksara bercelaru, penyelesaian dan contoh kod khusus. Sebab biasa aksara bercelaru ialah tetapan set aksara pangkalan data yang salah: set aksara yang betul perlu dipilih semasa mencipta pangkalan data, seperti utf8 atau u

Bagaimana untuk menyambung ke pangkalan data jauh menggunakan Golang? Bagaimana untuk menyambung ke pangkalan data jauh menggunakan Golang? Jun 01, 2024 pm 08:31 PM

Melalui pakej pangkalan data/sql perpustakaan standard Go, anda boleh menyambung ke pangkalan data jauh seperti MySQL, PostgreSQL atau SQLite: buat rentetan sambungan yang mengandungi maklumat sambungan pangkalan data. Gunakan fungsi sql.Open() untuk membuka sambungan pangkalan data. Lakukan operasi pangkalan data seperti pertanyaan SQL dan operasi sisipan. Gunakan tangguh untuk menutup sambungan pangkalan data untuk mengeluarkan sumber.

See all articles