Selectori și hook-ul useSelector în Redux

În lecțiile anterioare, am stocat în store datele despre produse. Cum le putem obține din store?

Pentru a face acest lucru, trebuie să scriem o funcție-selector. Această funcție știe cum să extragă o anumită bucată de informații din valoarea stării stocate în store și ajută la evitarea scrierii de cod repetat pe măsură ce aplicația crește. La intrare, această funcție primește state, iar la ieșire returnează porțiunea necesară a stării. De exemplu, așa:

jsxconst selectValue = state => state.some.value

La începutul acestui ghid, s-a menționat că store are o metodă getState. Și am putea foarte ușor să o folosim pentru a obține valoarea stării:

jsxconst value = selectValue(store.getState())

Problema este că componentele noastre React nu pot accesa direct store, deoarece este interzis să îl importăm în fișierul componentei. Dar avem posibilitatea de a obține datele în componentă folosind hook-ul React-Redux useSelector. În plus, cu acest hook, componentele noastre vor primi întotdeauna doar date actualizate:

jsxconst count = useSelector(selectValue)