Mena he kaiwhakawhanake React koe kaore ano kia ako mo nga matau React, koinei te waa. Ka haere tenei panui ma te whakamahiEffect React Hook i roto i nga korero taipitopito. He rite te matau ki te maripi Ope Taua Swiss. Ka whakatauhia e ia nga momo take, penei me pehea te tiki raraunga ina piki ana tetahi waahanga, me pehea te whakahaere i te waehere ka huri te ahua, te tautoko ranei, me pehea te whakarite i nga taima me nga waahi, me era atu.
Ka whakamahia te useEffect mo nga mea katoa e hiahia ana koe ki te "mahi" i roto i tetahi waahanga React kaore i te whakahoki JSX (tetahi momo paanga taha). He maha pea nga hua whakamahi mo ia waahanga.
Ko enei mana katoa he utu: ki te kore koe e mohio ki te mahi, ka raru pea. I roto i tenei pou, ka tirohia e matou nga momo tauira kia mohio ai koe ki te tauira ariā me te whakamahi ki to ake waehere.
Tauhohe matau – He aha tana e ngana ana ki te whakaoti?
I whakaurua tuatahitia nga matau ki te putanga React 16.8 a kei te whakamahia inaianei e te maha o nga kaupapa React. Ka taea e nga matau te raru o te tukurua waehere i waenga i nga waahanga. Ka tuhia ki waho o nga karaehe. Ehara tenei i te kii kei te whakarere a React i nga karaehe; he tikanga rereke noa nga matau.
Ko te React ka taea e koe te hanga tere i nga waahanga maamaa me te arorau ahua. He uaua ki te wehe i enei waahanga na te mea ka whakawhirinaki te karaehe ki nga Tikanga Huringa Ora. I konei ka uru mai a React Hooks.
Ka taea e koe te wehewehe i tetahi waahanga ki nga mahi iti ake. Engari ki te wehewehe i te waehere ki nga waahanga iti i runga i nga tikanga o te Lifecycle, ka taea e koe te whakarite me te wehe i te waehere ki nga waahanga iti ake i runga i te mahi.
He aha te whakamahiEffect Hook?
Ko nga matau he mahi e taea ai e koe te uru atu ki te ahua me etahi atu kaha tauhohenga me te kore e tuhi i nga karaehe ES6. Kei te API nga matau react he matau e kiia nei ko useEffect. Mena kei te mohio koe ki nga huringa ora tauhohe, he rite te matau useEffect ki te componentDidMount, componentDidUpdate, a componentWillUnmount tikanga huringa ora ngā.
E ai ki nga tuhinga React Hooks, i hangaia hei whakaoti i etahi o nga take me nga tikanga huringa ora o te wahanga akomanga ES6.
Tohu
Ko te tohenga tuatahi he mahi hokiwaea, ka mahia ma te taunoa i muri i ia tukunga. Ko te tawhā tuarua he rarangi Whakawhirinakitanga hei whakahau i te Matau ki te hokinga mai mena ka huri noa te ahua o te whaainga.
Ka whakatauritehia e te Matau nga ahuatanga o mua me nga ahuatanga o naianei. Ki te kore e taurite nga uara e rua, ka karangahia e te Matau te waea hoki kua tohua ki te tawhā tuatahi. Ko nga rarangi whakawhirinaki ka whakarereke i te ahua o te waea whakahoki mai me te whakapumau ka warewarehia e te Matau etahi atu waahanga katoa o te waahanga waahanga.
Te whakamahinga taketake
Hei tiaki i tetahi karere, kei te whakamahi ahau i te React useState i te tauira waehere i runga ake nei. Whai muri i tera, ka tangohia e ahau taku taurangi ahua korero ka taia ki te mata. Heoi, kei te pirangi au inaianei ki te whakamahiEffect ki te whakarereke i te karere i muri i te whakaurunga o te waahanga.
Kua whakauruhia e ahau taku paanga ki muri i te raina useState i muri i te kawemai i te useEffect mai i te anga React. Ko te tawhā tuatahi ki te whakamahiEffect he mahi. Ka mahia ana tenei kaihautu mahi, ka tiakina e ia nga paanga taha ka tukuna e koe. Ko te mahi he taumahi hokiwaea ka karangahia ina puta tetahi o nga takahanga huringa ora o te wahanga React.
Ahea ki te whakamahi i te reira?
Ka whai hua pea te matau useEffect i roto i nga ahuatanga rereke. Ko nga mea e whai ake nei ko nga mea tino nui:
- Ka taea e tatou te huri i tenei tawhā mai i te taha o te kiritaki ina hiahia ana tatou ki te tiki raraunga i runga i te tohenga kua tukuna. Ka maumaharahia i muri i te whakahou i te tawhā me nga raraunga hou.
- Mena kei te pirangi matou ki te tiki raraunga mai i te pito mutunga API me te whakaatu ki te taha-kiritaki. Ka puta to maatau wae, ka mahia te mahi, te kaihautu ranei i hoatu ki te matau UseEffect, ka tangohia nga raraunga kei roto i nga ahuatanga o te waahanga. Ka whakamahia enei mana ki nga waahanga atanga kaiwhakamahi.
- Ina whirinaki ana to wahanga ki nga raraunga mai i te ao o waho ka kore e taea e matou te whakarite kia tae mai nga raraunga, me whakamahi te Effect (kei te noho tonu te tūmau). Engari kaua e maka raruraru me te aukati i etahi atu waahanga kia kaua e whakaatuhia, tuu ki te matau useEffect.
Whakamahia nga take
Mena ka tukuna ano te waahanga i muri i te oma tuatahi, kaore e mahia.
I nga wa katoa ka tukuna, ka tukuna ano ranei tetahi waahanga, me mahi tonu.
Ma te taunoa, kotahi noa te whakahaere o te papatono. Muri iho, ki te huri nga uara tautoko, whakahaere:
Mo nga mahi tukutahi, whakamahia tonu te useEffect.
Ko nga poraka waehere useEffect he tohu tohu mo nga mahi tukutahi mo o hoa kaiwhakawhanake. Ka taea te hanga waehere tukutahi me te kore whakamahi i te useEffect, engari ehara tenei i te "React tikanga," ka piki ake te uaua me te tupono o nga hapa.
Ko te whakamahi i te useEffect hei utu mo te tuhi i te waehere tukutahi ka aukati i te UI he tikanga rongonui i roto i te hapori React, ina koa ko te huarahi i hangaia e te roopu React ki te mahi i tetahi paanga taha.
Ko tetahi atu painga o te whakamahi ko te mea ka taea e nga kaiwhakawhanake te arotake noa i te waehere me te kite tonu i te waehere e whakahaerea ana "i waho o te rere mana," ka whai mana anake i muri i te huringa whakaputa tuatahi. I tua atu, ko nga poraka he pai mo te tangohanga ki nga Matau ka taea te whakamahi ano me etahi atu ritenga ritenga.
He tauira
Ma te whakamahi i te waehere useEffect, whakanuia he tau mo ia hekona.
Opaniraa
Ko te mohio ki nga maataapono hoahoa me nga tikanga pai o te whakamahiEffect Hook, ki taku titiro, he tino pukenga hei ako mena kei te pirangi koe ki te noho hei kaiwhakawhanake React taumata-muri.
Hei whakarāpopoto, ka whiwhi te useEffect Hook i tetahi mahi e whai mana nui ana, ka taea te whai i te arorau katoa. Ko te rarangi whakawhirinaki, ko te tawhā tuarua, ka taea te whakamahi hei awe i te mahi. I te wa e pa ana ki a ia, he mea tika ano hoki te tuhi i te waehere horoi ma te whakamahi i te mahi whakahoki.
Korerohia mai ki a maatau i roto i nga korero mena he awhina te tuhinga.
Waiho i te Reply