Añadir información del vendedor en Redux
Hemos hablado sobre el hecho de que nuestros productos son añadidos a la aplicación por los vendedores. Vamos a mostrar la información del vendedor al añadir un nuevo producto.
Abrimos nuestra aplicación de productos,
y en ella el archivo productsSlice.js. Vamos
a pasar a prepare un parámetro más,
lo llamaremos sellerId y lo establecemos
en el payload de la acción. Ahora nuestro
fragmento de código para prepare será así:
prepare(name, desc, price, amount, sellerId) {
return {
payload: {
id: nanoid(),
name,
desc,
price,
amount,
seller: sellerId,
},
}
},
Ahora necesitamos hacer una serie de cambios en el archivo
del formulario para añadir productos
NewProductForm.jsx. Primero añadamos
otro estado local para el id del vendedor:
const [sellerId, setSellerId] = useState('')
Luego, después de declarar la variable
dispatch para useDispatch,
añadamos el código para obtener el slice de vendedores
del estado usando el hook useSelector:
const sellers = useSelector((state) => state.sellers)
En los manejadores para los campos de entrada, añadamos uno más:
const onSellerChanged = (e) => setSellerId(e.target.value)
Ajustemos onSaveProductClick, añadiendo
sellerId a la acción productAdded:
dispatch(productAdded(name, desc, price, amount, sellerId))
Abre tu aplicación de estudiantes.
Añade la posibilidad de introducir información
sobre el profesor que añadió a los estudiantes.
Para ello, estudiando el material de la lección, realiza
cambios en la función prepare en el archivo
studentsSlice.js.
Realiza los cambios correspondientes en
el archivo NewStudentForm.jsx