Paano mo pipigilan ang pag-unmount ng mga bahagi?
Paano mo pipigilan ang pag-unmount ng mga bahagi?

Video: Paano mo pipigilan ang pag-unmount ng mga bahagi?

Video: Paano mo pipigilan ang pag-unmount ng mga bahagi?
Video: Ano ang mga kailangan kong tandaan pagkatapos ng operasyon? 2024, Mayo
Anonim

Gamit gumanti -router maaari mong madaling pigilan pagbabago ng ruta (na gagawin pigilan sangkap i-unmount ) sa pamamagitan ng paggamit ng Prompt. Kailangan mong manu-manong ipasa ang getUserConfirmation prop na isang function. Maaari mong baguhin ang function na ito ayon sa gusto mo sa alinmang Router (Browser, Memory o Hash) upang gawin ang iyong custom na dialog ng kumpirmasyon (hal.

Ang dapat ding malaman ay, paano mo i-unmount ang bahagi ng isang reaksyon?

Sagot. Oo, nagbibigay ang ReactDOM ng paraan upang alisin ang a sangkap mula sa DOM sa pamamagitan ng code nang manu-mano. Maaari mong gamitin ang pamamaraang ReactDOM. unmountComponentAtNode(container), na mag-aalis ng naka-mount React component mula sa DOM sa tinukoy na lalagyan, at linisin ang alinman sa mga tagapangasiwa at estado ng kaganapan nito.

Higit pa rito, hindi matawagan ang setState o forceUpdate sa isang hindi naka-mount na bahagi Ito ay isang no op? Babala: Hindi matawagan ang setState (o forceUpdate) sa isang hindi naka-mount na bahagi . Ito ay hindi - op , ngunit ito ay nagpapahiwatig ng memory leak sa iyong application. Para ayusin, kanselahin ang lahat ng subscription at asynchronous na gawain sa componentWillUnmount method. Kaya ang solusyon na karaniwang nararating ng mga tao ay ang paggamit ng Redux.

Sa ganitong paraan, ano ang hindi naka-mount na bahagi?

Ang pagtawag sa setState() sa isang hindi naka-mount na bahagi nangangahulugan na ang sangkap ay hindi nalinis nang maayos bago maging hindi naka-mount , ibig sabihin, may reference pa rin ang iyong app sa isang hindi naka-mount na bahagi.

Kailan ko dapat gamitin ang componentWillUnmount?

componentWillUnmount ay ang huling function na tatawagin kaagad bago maalis ang component sa DOM. Ito ay karaniwang ginagamit upang magsagawa ng paglilinis para sa anumang DOM-element o timer na ginawa sa componentWillMount. Sa isang piknik, componentWillUnmount tumutugma sa bago mo kunin ang iyong picnic blanket.

Inirerekumendang: