⊗jsrxPmRDAL 31 of 57 menu

Добавяне на допълнителна логика в Redux приложение

В този урок ще добавим последния компонент към нашето приложение. По-конкретно, ще добавим към продукта реакция на потребителя, който го е поръчал или е прочел информация за него.

Нека отворим нашето приложение с продукти. Както в случая с името на продавача, ние трябва да покажем реакцията на потребителите на няколко места в приложението. А това означава, че ще ни трябва отделен компонент. Затова нека започнем, като в папката products създадем файл UserReactions.jsx. Нека първоначално да напишем в него обект, който ще съдържа нашите реакции:

const reactionObj = { good: '+', soso: '+/-', bad: '-', }

А по-надолу нека започнем да пишем самата функция, в която ще предаваме slice-а product:

export const UserReactions = ({ product }) => {}

Сега във фигурните скоби ще напишем тялото на функцията UserReactions. За това ще обходим с map двойките ключ-стойност на нашия reactionObj, за всяка ще получим обозначение за бутона ('+', '+/-' или '-') и числената стойност на съответната реакция (ще я извлечем от product в store по името на реакцията):

const userReactions = Object.entries(reactionObj).map(([name, image]) => { return ( <button key={name} type="button" className="reaction-button"> {image} {product.reactions[name]} </button> ) })

И след това в края на кода на функцията ще върнем верстката с бутоните userReactions:

return <div>{userReactions}</div>

А също така ще добавим още малко стилове в index.css:

.reaction-button { margin-right: 10px; margin-bottom: 10px; }

Ако това изглежда малко объркващо, не се притеснявайте, по-нататък всичко ще ви стане много по-ясно.

Отворете вашето приложение със студенти. В вашето приложение ще има възможност за потребителите да изберат сред студентите староста на групата и капитана на спортния отбор. Затова, след като изучите материала от урока, създайте в папката students файл UserVotes.jsx. В началото на файла създайте обект votesObj, в който ще имате две свойства - leader и captain, със стойности GL и TC, като обозначение за бутоните.

По-долу във файла след дефинирането на обекта votesObj напишете кода на функцията UserVotes, по аналогия с материала от този урок.

Български
AfrikaansAzərbaycanবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ние използваме бисквитки за работата на сайта, анализ и персонализация. Обработката на данни се извършва в съответствие с Политика за поверителност.
приемам всички настройки отхвърляне