Selektor i useSelector Hook u Redux
Na prethodnim lekcijama smo snimili u store podatke o proizvodima. Kako da ih dobijemo iz store?
Da bismo to uradili, moramo da napišemo funkciju-selector. Ova funkcija zna kako da izvuče određeni deo informacije iz vrednosti state-a koji se čuva u store-u i pomaže da se izbegne pisanje ponavljajućeg koda kako aplikacija raste. Kao ulaz ova funkcija prima state, a kao izlaz daje neophodni slice state-a. Na primer ovako:
const selectValue = state => state.some.value
Na samom početku udžbenika pomenuto je da
store ima metod getState. I mi
bismo lako mogli da ga koristimo za
dobijanje vrednosti state-a:
const value = selectValue(store.getState())
Problem je u tome što naše React
komponente ne mogu direktno da pristupe
store-u, jer je zabranjeno importovati ga
u fajl komponente. Ali mi imamo mogućnost
da dobijemo podatke u komponenti koristeći
React-Redux hook useSelector. Štaviše,
sa ovim hook-om naše komponente će uvek dobijati
samo ažurne podatke:
const count = useSelector(selectValue)