Redux-ի հիմնական տերմինները
Այս դասում մենք համառոտ կանցնենք հիմնական հասկացություններն ու տերմինները, որոնց իմացությունը անհրաժեշտ է Redux-ի հետագա ուսումնասիրության համար:
Մենք կսկսենք գործողություն-ից (action):
Սա որոշակի իրադարձություն է, որը
նկարագրում է, թե ինչ է տեղի ունեցել մեր
հավելվածում: Տեխնիկապես սա սովորական
JavaScript օբյեկտ է,
որը պարունակում է type դաշտը, որի մեջ մենք գրում ենք
գործողության անվանումը:
Գործողության օբյեկտի երկրորդ կարևոր դաշտը
payload դաշտն է:
Այն կպարունակի գործողության օգտակար բեռը:
Օգտակար բեռ ասելով հասկանում ենք
որոշ տվյալներ, որոնք փոխանցվում են
որպես պարամետրեր գործողությանը:
Նաև այս օբյեկտում կարող են լինել այլ դաշտեր՝ լրացուցիչ տեղեկություններով:
Օրինակի համար ստեղծենք մի գործողություն
և անվանենք այն addOrderAction: Թող
այն պատասխանի պատվերի ավելացմանը:
Այսպիսով, type հատկության մեջ մենք կնշենք, որ
պատվերը ավելացվել է (orderAdded) պատվերների
ցանկում (orders): Իսկ payload-ում կնշենք մանրամասն,
թե ինչ պատվեր է, օրինակ՝ ներկել
պատ:
const addOrderAction = {
type: 'orders/orderAdded',
payload: 'Paint a wall'
}
Որպեսզի ամեն անգամ ձեռքով չգրենք գործողության
օբյեկտը, մենք կարող ենք օգտագործել
այսպես կոչված action creator - ֆունկցիա,
որը կստեղծի և կվերադարձնի
մեզ գործողության օբյեկտը: Անվանենք այն
addOrder: Պարամետրով մենք
կփոխանցենք դրան մեզ անհրաժեշտ տեքստը
payload հատկության համար:
const addOrder = text => {
return {
type: 'orders/orderAdded',
payload: text
}
}
Հաջորդ կարևոր հասկացությունը այս շղթայում reducer-ն է (ռեդյուսեր) - ֆունկցիա, որը ընդունում է ընթացիկ վիճակը և գործողության օբյեկտը: Այս ֆունկցիան որոշում է, թե ինչպես թարմացնել վիճակը և անհրաժեշտության դեպքում վերադարձնում է արդեն թարմացված sթեյթը:
Հաջորդ հասկացությունը պահեստ-ն է (store) - սա օբյեկտ է, որում պահվում է Redux հավելվածի ընթացիկ գլոբալ վիճակը: Այս օբյեկտն ունի getState մեթոդ, որի օգնությամբ կարելի է ստանալ ընթացիկ sթեյթի արժեքը:
Պահեստն ունի նաև dispatch մեթոդը: Կանչել այն և փոխանցել գործողության օբյեկտը - սթեյթը փոխելու միակ եղանակն է: Արդյունքում ստորը կգործարկի ռեդյուսեր ֆունկցիան և կպահի իր մոտ sթեյթի նոր արժեքը:
Եվ վերջին հասկացությունը, որը մենք կդիտարկենք այս դասում, սելեկտորներ-ն են: Սելեկտորները հատուկ ֆունկցիաներ են, որոնք գիտեն, թե ինչպես վերցնել տեղեկություն պահեստում գտնվող sթեյթից: Այս ֆունկցիաները հատկապես օգտակար են ստացվում, երբ հավելվածը մեծանում է, և օգնում են խուսափել կոդի կրկնօրինակումից:
Այս բոլոր հասկացությունների և դրանց գործնական կիրառման մասին ավելի մանրամասն մենք կիմանանք այս ձեռնարկի հաջորդ բաժիններից: