⊗jsrxPmSDCPO 41 of 57 menu

Креирање објекта са подацима о производу у Redux-у

Функција за креирање објекта са продавцом постоји, пређимо на производ. Креирање овог објекта ће бити мало сложеније, пошто садржи више поља са подацима. Почнимо.

Отворимо нашу апликацију са производима, а у њој фајл server.js. Испод функције getRandInt написаћемо нашу функцију createProductData:

const createProductData = () => {}

Сада ћемо дефинисати потребна својства. Вредности за name, price и amount генерисаћемо помоћу getRandInt, коју смо написали на прошлом часу:

const createProductData = () => { return { name: `Product${getRandInt(0, 100)}`, price: getRandInt(100, 2000), amount: getRandInt(1, 50), } }

А за генерисање описа, искористићемо још једну корисну ствар. То је библиотека faker, која омогућава генерисање лажних имена, адреса, и-мејлова, назива улица, текстова и сл. на различитим језицима. Укуцајмо у терминалу следећу линију и инсталирајмо ову библиотеку за нашу апликацију:

npm install @faker-js/faker --save-dev

А затим импортујмо у наш фајл:

import { faker } from '@faker-js/faker'

Искористићемо њену функцију за генерисање реченица које садрже познати текст-"рибу" 'Lorem ipsum'. Нека опис садржи од 3 до 5 таквих реченица:

const createProductData = () => { return { name: `Product${getRandInt(0, 100)}`, desc: faker.lorem.sentences({ min: 3, max: 5 }), price: getRandInt(100, 2000), amount: getRandInt(1, 50), } }

Сада ћемо додати у наш објекат поље за реакције, као вредност проследићемо објекат генерисан на лицу места командом create (реакције ће за сада у њему бити 0):

const createProductData = () => { return { name: `Product${getRandInt(0, 100)}`, desc: faker.lorem.sentences({ min: 3, max: 5 }), price: getRandInt(100, 2000), amount: getRandInt(1, 50), reactions: db.reaction.create(), } }

И као последње својство додаћемо већ генерисан објекат продавца, који mорамо обавезно проследити као параметар функцији createProductData. Ево како изгледа комплетан код функције за креирање објекта производа:

const createProductData = (seller) => { return { name: `Product${getRandInt(0, 100)}`, desc: faker.lorem.sentences({ min: 3, max: 5 }), price: getRandInt(100, 2000), amount: getRandInt(1, 50), reactions: db.reaction.create(), seller, } }

Отворите вашу апликацију са студентима. Упознавши се са материјалом ове лекције, напишите функцију за креирање објекта са подацима о студенту.

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