⊗jsrxPmSDInr 34 of 57 menu

Razmena podataka između Redux aplikacije i servera

Ovaj odeljak će biti za zahtevne učenike, koji se nisu zaustavili na postignutom u Redux-u i odlučili su da dođu do kraja ovog udžbenika. U naredna dva odeljka ćemo dotaknuti rad aplikacije Redux sa asinhronom logikom, povezati našu aplikaciju sa serverskom stranom i naučiti je da razmenjuje podatke sa njom.

Iz prethodnih odeljaka znamo da u osnovi rada Redux aplikacije leži sinhroni mehanizam. Osnovni koraci rada se sastoje u slanju akcija pri nastanku nekog događaja u aplikaciji, zatim ažuriranju stanja u store-u funkcijom-reduktorom, obaveštavanju komponenti aplikacije o promeni stanja i shodno tome prikazivanju nove vrednosti stanja u komponentama.

U stvarnom životu često se dešava da aplikaciji bude potrebna i asinhrona logika, na primer pri radu sa HTTP API zahtevima i dobijanjem podataka sa nekog spoljnog servera. Zbog toga da bi naš 'sinhroni' Redux store mogao da radi sa takvom asinhronom logikom koristi se tako zvano middleware - programski dodatak, koji je posrednik ili spojka između store-a naše aplikacije i, na primer, servera, sa kojim ćemo započeti rad u ovoj glavi udžbenika.

Za Redux je napravljeno mnogo takvih middleware-a, međutim najšire rasprostranjeni među njima i zvanično preporučeni pri radu Redux aplikacija sa asinhronom logikom za sada ostaje Redux Thunk. Ovaj dodatak pomaže nam da koristimo obične funkcije (ili thunk-ove), koje mogu da sadrže u sebi asinhronu logiku, kao što su setTimeout, Promises, async/await, za interakciju sa našim store-om. Što se tiče samog termina, thunk - to je kod koji obavlja neki odloženi posao.

Sada, kada smo se malo upoznali sa tim, kako da radimo u Redux-u sa asinhronom logikom, možemo da pristupimo realizaciji ove faze u našoj aplikaciji. Treba da postignemo da naša aplikacija može da komunicira sa nekim spoljnim serverom, primajući od njega i prenoseći mu podatke. Drugim rečima, ispred nas čeka zanimljiva i veoma važna tema. Počnimo.

Srpski
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Koristimo kolačiće za rad sajta, analitiku i personalizaciju. Obrada podataka se vrši u skladu sa Politikom privatnosti.
prihvati sve podesi odbij