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