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(),
}
}
और अंतिम गुण के रूप में हम पहले से जनरेट की गई
विक्रेता वस्तु जोड़ेंगे, जिसे
हमें अवश्य ही 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,
}
}
अपना छात्रों वाला एप्लिकेशन खोलें। इस पाठ की सामग्री से परिचित होने के बाद, छात्र डेटा वाली वस्तु बनाने के लिए एक फ़ंक्शन लिखें।