Селектори и hook-от useSelector во Redux
На претходните лекции, ги запишавме во store податоците за производите. Како да ги добиеме од store?
За да го направиме тоа, потребно е да напишеме функција-селектор. Оваа функција знае како да извлече одредено парче информација од вредноста на state-от складирана во store и помага да се избегне пишување на повtorувачки код со растењето на апликацијата. На влез оваа функција прима state, а на излез ја дава потребната парче од state-от. На пример вака:
const selectValue = state => state.some.value
На самиот почеток на учебникот беше споменато
дека store има метод getState. И ние
лесно можеби ќе го искористевме за
добивање на вредноста на state-от:
const value = selectValue(store.getState())
Проблемот е во тоа што нашите React
компоненти не можат директно да пристапат до
store, бидејќи забрането е да се импортира
во датотеката на компонентата. Но, ние имаме можност
да ги добиеме податоците во компонентата со помош
на React-Redux hook-от useSelector. Освен тоа,
со овој hook нашите компоненти секогаш ќе добиваат
само актуелни податоци:
const count = useSelector(selectValue)