⊗jsrtPmFmsOIB 71 of 112 menu

Дар React воридкуниҳоро ба объект пайваст кардан

Бигзор дар ҳолат як объект нигоҳ дошта шавад:

const initObj = { prop1: 'value1', prop2: 'value2', prop3: 'value3', } function App() { const [obj, setObj] = useState(initObj); return <div> {obj.prop1}-{obj.prop2}-{obj.prop3} </div>; }

Биёед ҳар як хосияти объекти худро дар воридкунии алоҳида намоиш диҳем:

function App() { const [obj, setObj] = useState(initObj); return <div> <input value={obj.prop1} /> <input value={obj.prop2} /> <input value={obj.prop3} /> <br /> {obj.prop1}-{obj.prop2}-{obj.prop3} </div>; }

Акнун ба ҳар як воридкунӣ воқеаи onChange-ро пайваст кунем. Ҳамчун коргар як функсияи умумӣ таъин кунем:

function App() { const [obj, setObj] = useState(initObj); return <div> <input value={obj.prop1} onChange={event => handleChange('prop1', event)} /> <input value={obj.prop2} onChange={event => handleChange('prop2', event)} /> <input value={obj.prop3} onChange={event => handleChange('prop3', event)} /> <br /> {obj.prop1}-{obj.prop2}-{obj.prop3} </div>; }

Тавре ки мебинед, функсияи handleChange дар параметри аввал номи хосияти мувофиқи объектро қабул мекунад.

Биёед амалӣ кардани функсияи худро нависем:

function handleChange(prop, event) { const copy = Object.assign({}, obj); copy[prop] = event.target.value; setObj(copy); }

Ин амалӣ коркуноқ аст, вале онро метавон содда кард, агар аз номҳои ҳисобкардаи хосиятҳои объект истифода баред:

function handleChange(prop, event) { setObj({...obj, ...{[prop]: event.target.value}}); }

Биёед ҳама коди якҷоя ҷамъ кунем:

function App() { const [obj, setObj] = useState(initObj); function handleChange(prop, event) { setObj({...obj, ...{[prop]: event.target.value}}); } return <div> <input value={obj.prop1} onChange={event => handleChange('prop1', event)} /> <input value={obj.prop2} onChange={event => handleChange('prop2', event)} /> <input value={obj.prop3} onChange={event => handleChange('prop3', event)} /> <br /> {obj.prop1}-{obj.prop2}-{obj.prop3} </div>; }

Бигзор дар ҳолат объекте бо сана нигоҳ дошта шавад:

const initDate = { year: 2025, month: 12, day: 31, }

Дар абзас сол, моҳ ва рӯзи санаеро, ки дар ҳолат нигоҳ дошта мешавад, инчунин рӯзи ҳафта, ба он мувофиқро, намоиш диҳед.

Вазифаи қаблиро таҳрир кунед, барои таҳрири сана се воридкунӣ илова кунед.

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