სელექტორები და useSelector ჰუკი Redux-ში

წინა გაკვეთილებზე ჩვენ store-ში ჩავწერეთ პროდუქტების მონაცემები. როგორ მივიღოთ ისინი store-დან?

ამისათვის საჭიროა დავწეროთ ფუნქცია-სელექტორი. ეს ფუნქცია იცის, როგორ ამოიღოს ინფორმაციის კონკრეტული ნაწილი store-ში შენახული სტეიტის მნიშვნელობიდან და დაგვეხმარება გავირიდოთ განმეორებადი კოდის წერა აპლიკაციის გაფართოებისას. შეყვანის时 ეს ფუნქცია იღებს state-ს,而 გამომავალი时 აბრუნებს სტეიტის საჭირო ნაწილს. მაგალითად ასე:

jsxconst selectValue = state => state.some.value

წიგნის დასაწყისში იყო ნახსენები, რომ store-ს აქვს მეთოდი getState. და ჩვენ მარტივად შ�ვეძლო გამოგვეყენებინა ის სტეიტის მნიშვნელობის მისაღებად:

jsxconst value = selectValue(store.getState())

პრობლემა ისაა, რომ ჩვენს React კომპონენტებს არ შეუძლიათ პირდაპირი წვდომა store-ზე, ვინაიდან მისი იმპორტი კომპონენტის ფაილში აკრძალულია. მაგრამ ჩვენ გვაქვს შესაძლებლობა მივიღოთ მონაცემები კომპონენტში React-Redux-ის ჰუკის useSelector დახმარებით. ამასთან, ამ ჰუკთან ჩვენი კომპონენტები ყოველთვის მიიღებენ მხოლოდ აქტუალურ მონაცემებს:

jsxconst count = useSelector(selectValue)