Más forbróir React thú nach bhfuil foghlamtha agat fós faoi na crúcaí React, seo an t-am. Rachaidh an post seo tríd an useEffect React Hook go mion. Is ionann é agus duán le scian de chuid Arm na hEilvéise. Réitíonn sé saincheisteanna éagsúla, mar shampla conas sonraí a fháil nuair a ghléasann comhpháirt, conas cód a rith nuair a athraíonn stát nó próp, conas amadóirí nó eatraimh a shocrú, agus mar sin de.
Úsáidtear useEffect le haghaidh beagnach aon rud is mian leat a “dhéanamh” i gcomhpháirt React nach bhfuil JSX ag filleadh (fo-iarmhairt ar bith). Is féidir go mbeidh roinnt Éifeachtaí úsáide agat in aghaidh an chomhpháirte.
Tagann an chumhacht seo go léir ar chostas: mura dtuigeann tú conas a oibríonn sé, d'fhéadfadh sé a bheith perplexing. Sa phost seo, féachfaimid ar shamplaí éagsúla ionas gur féidir leat an tsamhail choincheapúil a thuiscint agus é a chur i bhfeidhm ar do chód féin.
Hooks React – Cad atá sé ag iarraidh a réiteach?
Tugadh dubháin isteach den chéad uair i leagan React 16.8 agus úsáideann go leor tionscadal React anois iad. Sáraíonn Hooks fadhb athrá cód idir comhpháirteanna. Scríobhtar iad gan úsáid a bhaint as ranganna. Ní thugann sé seo le tuiscint go bhfuil React ag tréigean ranganna; níl iontu ach modh eile.
Ligeann React duit comhpháirteanna sofaisticiúla a chruthú go tapa le loighic státmhar. Tá sé deacair na comhpháirteanna seo a scaradh ós rud é go mbraitheann an rang ar Mhodhanna Imoibríocha Saolré. Seo an áit a dtagann React Hooks isteach.
Ligeann siad duit comhpháirt a roinnt ina fheidhmeanna níos lú. In ionad cód a roinnt ina phíosaí níos lú bunaithe ar mhodhanna Saolré, is féidir leat an cód a shocrú agus a dheighilt ina aonaid níos lú ag brath ar fheidhmiúlacht.
Cad é useEffect Hook?
Is feidhmeanna iad crúcaí a ligeann duit rochtain a fháil ar chumais imoibrithe stáit agus eile gan a bheith ort ranganna ES6 a scríobh. Tá duán ag an API react hooks ar a dtugtar useEffect. Má tá tú eolach ar shaolréanna imoibrithe, tá an duán useEffect mar an gcéanna leis an ComhpháirtDidMount, ComhpháirtDidUpdate, agus comhpháirtWillUnmount modhanna saolré comhcheangailte.
De réir doiciméadú React Hooks, cruthaíodh é chun cuid de na saincheisteanna a réiteach le modhanna saolré comhpháirteanna ranga ES6.
Comhréire
Is feidhm aisghlao í an chéad argóint, a dhéantar de réir réamhshocraithe tar éis gach rindreála. Is é atá sa dara paraiméadar ná eagar roghnach Spleáchais a thugann treoir don Hook aisghlaoch ach amháin má athraíonn an spriocstát.
Déanann an Hook comparáid idir stáit stairiúla agus láithreacha gach spleáchais. Mura n-oireann an dá luach, agraíonn an Hook an aisghlao atá sonraithe sa chéad pharaiméadar. Athraíonn eagair spleáchais an gnáthiompar aisghlaoite agus ráthaítear go ndéanann an Hook neamhaird ar gach comhpháirt eile i raon feidhme na gcomhpháirteanna.
Úsáid bhunúsach
Chun teachtaireacht a shábháil, tá mé ag baint úsáide as React useState sa sampla cód thuas. Tar éis sin, glacaim athróg stáit mo theachtaireachta agus priontálaim ar an scáileán é. Mar sin féin, ba mhaith liom anois úsáid a bhaint asEffect chun an teachtaireacht a mhodhnú soicind tar éis an chomhpháirt a bheith suite.
Chuir mé m'éifeacht isteach taobh thiar den líne useState tar éis iompórtáil useEffect ó chreat React. Is é an chéad paraiméadar a useEffect feidhm. Nuair a dhéantar an láimhseálaí feidhm seo a fhorghníomhú, tabharfaidh sé aire d'aon fo-iarsmaí a sholáthraíonn tú. Is feidhm aisghlao í an fheidhm a thugtar nuair a tharlaíonn ceann d’imeachtaí saolré chomhpháirt React.
Cathain a úsáidfear é?
D’fhéadfadh an duán useEffect a bheith úsáideach i gcásanna éagsúla. Is iad seo a leanas na cinn is ríthábhachtach:
- Is féidir linn an paraiméadar seo a athrú ó thaobh an chliaint nuair is mian linn sonraí a fháil ag brath ar argóint a cuireadh ar fáil. Déanfar é a athghairm tar éis an paraiméadar a bheith nuashonraithe le sonraí úra.
- Más mian linn sonraí a aisghabháil ó chríochphointe API agus é a thaispeáint ar thaobh an chliaint. Nuair a rindreáil ár gcomhpháirt, déantar an fheidhm nó an láimhseálaí a thugtar don hook useEffect a fhorghníomhú, agus déantar sonraí sna stáit chomhpháirt a aisghabháil. Úsáidtear na stádais seo ansin i gcomhpháirteanna an chomhéadain úsáideora.
- Nuair a bhíonn do chomhpháirt ag brath ar shonraí ón domhan lasmuigh agus nach féidir linn a chinntiú go dtiocfaidh sonraí, ba cheart dúinn Effect a úsáid (b'fhéidir go bhfuil an freastalaí síos ann). In áit fadhbanna a chaitheamh agus comhpháirteanna eile a chosc ó bheith ar taispeáint, cuir sa hook useEffect iad.
Cásanna a úsáid
Má dhéanann an comhpháirt ath-rindreáil tar éis an chéad rith, ní bheidh sé a fhorghníomhú.
Aon uair a rindreálann nó a athdhéantar comhpháirt, ba cheart é a fhorghníomhú i gcónaí.
De réir réamhshocraithe, ní ritheann an clár ach uair amháin. Ina dhiaidh sin, má athraíonn na luachanna prop, rith:
Le haghaidh gníomhaíochtaí asincrónacha, bain úsáid as useEffect i gcónaí.
Is marcóirí soiléire iad bloic cóid useEffect ar phoist asincrónacha do do chomhfhorbróirí. Is féidir cód asincrónach a chruthú gan useEffect a úsáid, ach ní hé seo an “Modh React,” agus méadaíonn sé castacht agus riosca botúin.
Is teicníocht aitheanta sa phobal React é useEffect in ionad cód asincrónach a scríobh a d'fhéadfadh stop a chur leis an Chomhéadain, go háirithe an chaoi ar thóg an fhoireann React é chun fo-iarmhairt a dhéanamh.
Buntáiste eile a bhaineann leis a úsáid ná gur féidir le forbróirí athbhreithniú a dhéanamh ar an gcód go simplí agus cód a reáchtáiltear "lasmuigh den sreabhadh rialaithe" a bhrath láithreach, rud a thagann chun bheith tábhachtach ach amháin tar éis an chéad timthriall rindreála. Ina theannta sin, tá na bloic oiriúnach le haghaidh eastóscadh i Hooks saincheaptha ath-inúsáidte agus fiú níos mó shéimeantach.
Sampla
Ag baint úsáide as an gcód useEffect, incrimint uimhir in aghaidh an tsoicind.
Conclúid
Is scil ríthábhachtach é tuiscint a fháil ar bhunphrionsabail dearaidh agus ar dhea-chleachtais an useEffect Hook, i mo thuairim, más mian leat a bheith i d’fhorbróir React den chéad leibhéal eile.
Mar achoimre, faigheann an Duán useEffect feidhm lena n-áirítear loighic iomlán ríthábhachtach a bhféadfadh éifeacht a bheith aici. Is féidir an t-eagar spleáchais, arb é an dara paraiméadar é, a úsáid chun tionchar a imirt ar fhorghníomhú. Agus é ag déileáil leis, is gá freisin cód glantacháin a scríobh ag baint úsáide as an bhfeidhm tuairisceáin.
Cuir in iúl dúinn sna tuairimí má bhí an t-alt cabhrach.
Leave a Reply