Redux üçün Server Verilənlər Bazası
Keçən dərsdə biz msw qurmuşduq, bu, tətbiqimizin serverlə işləməsini simulyasiya etməyə kömək edəcək. Və başlanğıc olaraq biz tətbiq işə düşəndə artıq serverdə mövcud olan məlumatların yüklənməsini istəyirik.
Gəlin məhsullarla bağlı tətbiqimizi açaq,
və onun içindəki server.js faylına baxaq. Burada artıq
keçən dərsdən qalmış
bir neçə kod sətri var.
Və ilk özümüzdən soruşmalı olduğumuz: məlumatlar harada saxlanılır? Bəli, əlbəttə verilənlər bazasında, düşünmədən cavab verəcəyik. Buna görə də gəlin məlumat modellərimizi yaratmağa imkan verəcək, həmçinin həqiqi SQL bazası ilə işlədiyimiz kimi göstərəcək başqa bir əla alətdən istifadə edək.
Bunda bizə kömək edəcək alət - @mswjs/data kitabxanasıdır. Onu qurmaq üçün terminalda aşağıdakı əmri daxil edin:
npm install @mswjs/data --save-dev
İndi server.js faylında
lazım olan şeyləri import edək:
import { factory, oneOf, manyOf, primaryKey } from '@mswjs/data'
Və improvizasiya edilmiş verilənlər bazamızı
yadaq. Bunun üçün factory funksiyasından
istifadə edəcəyik. Bunu import sətirlərindən
sonra və worker-in export-dan əvvəl edəcəyik:
export const db = factory({})
Bəs biz onda hansı məlumatları saxlayacayıq?
Serverdən biz məhsulları,
satıcıları və istifadəçi reaksiyalarını almalıyıq. Deməli
verilənlər bazamızda factory-nin obyekt şəklində qəbul etdiyi
üç model yaratmalıyıq:
export const db = factory({
product: {},
seller: {},
reaction: {},
})
Həqiqi SQL verilənlər bazasında olduğu kimi
hər bir modelimizin primary key (əsas açarı) olmalıdır.
Ənənəvi olaraq, bu sahəni id təyin edəcəyik,
onu da eyni nanoid kitabxanası ilə
yaradacayıq:
export const db = factory({
product: {
id: primaryKey(nanoid),
},
seller: {
id: primaryKey(nanoid),
},
reaction: {
id: primaryKey(nanoid),
},
})
Faylın əvvəlində, import sətirlərində nanoid-i əlavə etməyi unutmayaq:
import { nanoid } from '@reduxjs/toolkit'
Növbəti dərsdə modellərimizi lazımi sahələrlə tamamlayacayıq.
Tələbələrlə bağlı tətbiqinizi açın. Bu dərsin materialı ilə tanış olduqdan sonra, tətbiqiniz üçün @mswjs/data qurun.
Sonra, factory funksiyası vasitəsilə
db verilənlər bazası modelini yaradın. Dərsdə göstərildiyi kimi,
onun üçün üç obyekt (student, teacher, vote) ötürün.