⊗jsrxPmBsCs 2 of 57 menu

Twee Basiese Idees in Redux

Voordat ons met die bestudering van die Redux-biblioteek begin, laat ons eers kennis maak met sy twee basiese idees. Die eerste idee, wat handel oor staatbestuur, sal ons aan die hand van 'n gewone teller op staat in React ondersoek:

function Counter() { // Staat const [count, setCount] = useState(0) // Aksie: function clickHandler() { setCount(count + 1) } // Aansig: return ( <div> <span>{count}</span> <button onClick={clickHandler}>+</button> </div> ) }

In hierdie kode sien ons die staat vir die veranderlike count - dit is die bron van waarheid vir die teller. Dan sien ons aksie (action) - die gebeurtenis wat by 'n gebruikerskliek 'n opdatering van die staat veroorsaak. En laastens, aansig (view), waardeur ons die gebruikerskoppelvlak vertoon.

Die skema is dus redelik eenvoudig: 'n knoppie word gedruk - die staat count (State) word deur die druk (Action) verander, gevolglik verander die aansig (View) - in ons geval is dit die getal op die skerm.

Alles sal eger meer ingewikkeld wees as ons verskeie komponente het wat dieselfde staat moet gebruik. Ons kan natuurlik byvoorbeeld die staat oplig na ouerkomponente, maar so 'n oplossing kan nie altyd die probleem oplos nie. Redux bied in hierdie geval aan dat ons een plek in die toepassing skep wat die globale staat sal bevat en bepaalde gedragspatrone met die opdatering van hierdie staat. Dit is presies die eerste basiese idee (!).

Die tweede idee hou verband met onveranderlikheid, dit wil sê, die onveranderbaarheid van data. Jy sal natuurlik onthou uit JavaScript dat skikkings en voorwerpe verander kan word. Die direkte verandering van data in Redux, soos in ander raamwerke, word beskou as slegte styl en kan tot onvoorspelbare gevolge lei. Daarom moet ons oorspronklike voorwerpe en skikkings in Redux onveranderlik bly, en kan ons slegs hul kopieë verander.

Vertel, waarin lê die eerste basiese idee van Redux.

Vertel, waarin lê die tweede basiese idee van Redux.

Afrikaans
Azə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
Ons gebruik koekies vir die werking van die webwerf, ontleding en personalisering. Die verwerking van data geskied volgens die Privaatheidsbeleid.
aanvaar alles instel verwerp