Dodajanje informacij o prodajalcu v Redux

Že smo omenili, da produkte v aplikacijo dejansko dodajajo prodajalci. Ob dodajanju novega produkta izpišimo podatke o prodajalcu.

Odprimo našo aplikacijo s produkti in v njej datoteko productsSlice.js. V prepare posredujmo še en parameter, poimenujmo ga sellerId in ga nato nastavimo za payload akcije. Naš del kode za prepare bo zdaj takšen:

products/productsSlice.jsprepare(name, desc, price, amount, sellerId) {
  return {
    payload: {
      id: nanoid(),
      name,
      desc,
      price,
      amount,
      seller: sellerId,
    },
  }
},

Zdaj moramo narediti številne spremembe v datoteki z obrazcem za dodajanje produkta NewProductForm.jsx. Najprej dodajmo še en lokalni state za id prodajalca:

products/NewProductForm.jsxconst [sellerId, setSellerId] = useState('')

Nato po deklaraciji spremenljivke dispatch za useDispatch dodajmo kodo za pridobivanje slice prodajalcev iz state z uporabo hoka useSelector:

products/NewProductForm.jsxconst sellers = useSelector((state) => state.sellers)

V obdelovalnike za vnosna polja dodajmo še enega:

products/NewProductForm.jsxconst onSellerChanged = (e) => setSellerId(e.target.value)

Popravimo onSaveProductClick tako, da za akcijo productAdded dodamo še sellerId:

products/NewProductForm.jsxdispatch(productAdded(name, desc, price, amount, sellerId))
Задание 1

Odprite vašo aplikacijo s študenti. Dodajte možnost vnosa informacij o učitelju, ki je dodal študente. Za to, po preučitvi gradiva lekcije, naredite spremembe za funkcijo prepare v datoteki studentsSlice.js.

Задание 2

Naredite ustrezne spremembe v datoteki NewStudentForm.jsx