Pardavėjo informacijos pridėjimas Redux

Mes kalbėjome apie tai, kad mūsų produktai faktiškai yra pridedami į programėlę pardavėjų. Leiskite pridėtant naują produktą rodyti informaciją apie pardavėją.

Atidarykime mūsų programėlę su produktais, o joje failą productsSlice.js. Leiskite perduoti į prepare dar vieną parametrą, pavadinkime jį sellerId ir nustatykime jį toliau payload veiksmui. Dabar mūsų kodo gabalėlis prepare bus toks:

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

Dabar mums reikia atlikti keletą pakeitimų faile su forma produkto pridėjimui NewProductForm.jsx. Pirmiausia pridėkime dar vieną lokalų būseną pardavėjo id:

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

Tada po kintamojo dispatch deklaravimo useDispatch, pridėkime kodą pardavėjų gabalo gavimui iš būsenos naudojant kabliuką useSelector:

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

Į įvesties laukų apdorotojus pridėkime dar vieną:

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

Pataisykime onSaveProductClick, pridėdami veiksmui productAdded dar ir sellerId:

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

Atidarykite savo programėlę su studentais. Pridėkite galimybę įvesti informaciją apie dėstytoją, kuris pridėjo studentus. Tam, išstudijavę pamokos medžiagą, atlikite pakeitimus funkcijai prepare faile studentsSlice.js.

Задание 2

Atlikite atitinkamus pakeitimus faile NewStudentForm.jsx