Shkëmbimi i të dhënave ndërmjet aplikacionit Redux dhe serverit
Ky seksion do të jetë për nxënësit e përvojshëm, të cilët nuk u ndalën në arritjet e tyre në Redux dhe vendosën të shkonin deri në fund të këtij tutoriali. Në dy seksionet e ardhshme do të prekim punën e aplikacionit Redux me logjikë asinkrone, do ta lidhim aplikacionin tonë me pjesën e serverit dhe do të mësojmë të shkëmbejmë të dhëna me të.
Nga seksionet e mëparshme e dimë se në themel të punës së aplikacionit Redux qëndron mekanizmi sinkron. Fazat kryesore të punës përfshijnë dërgimin e aksioneve kur ndodh ndonjë ngjarje në aplikacion, pastaj përditësimin e state në store me funksionin reducer, njoftimin e komponentëve të aplikacionit për ndryshimin e state dhe në përputhje me rrethanat shfaqjen e vlerës së re të state në komponentë.
Në jetën reale shpesh ndodh që aplikacioni
të ketë nevojë për logjikë asinkrone, për shembull kur
punon me kërkesa HTTP API dhe merr të dhëna
nga ndonjë server i jashtëm. Prandaj, në mënyrë që
store-i ynë 'sinkron' Redux të mund të punojë
me logjikë të tillë asinkrone përdoret i ashtuquajturi
middlware - software
që shërben si ndërmjetës ose lidhje ndërmjet
store-it të aplikacionit tonë dhe, për shembull,
serverit, me të cilin do të fillojmë të punojmë në këtë
kapitull të tutorialit.
Për Redux janë krijuar shumë middleware të tillë,
por më i përhapuri ndër ta
dhe ende i rekomanduar zyrtarisht për punën e aplikacioneve Redux
me logjikë asinkrone mbetet
Redux Thunk.
Ky software na ndihmon të përdorim funksione
e zakonshme (ose thunks), të cilat mund të përmbajnë
në vete logjikë asinkrone, si
setTimeout, Promises, async/await,
për të ndërvepruar me store-in tonë. Sa i përket
vetë termit, thunk është kod që
bën ndonjë punë të shtyrë.
Tani, kur jemi njohur pak me mënyrën se si të punojmë në Redux me logjikë asinkrone, mund t'i vemi zbatimit të kësaj faze në aplikacionin tonë. Duhet të bëjmë që aplikacioni ynë të jetë në gjendje të ndërveprojë me ndonjë server të jashtëm, duke marrë nga ai dhe duke i dërguar atij të dhëna. Me fjalë të tjera, përpara na pret një temë emocionuese dhe shumë e rëndësishme. Le të fillojmë.