4 Жооптор. VirtualDOM Салыштыруу учурунда эгер компонент бар болсо, бирок мындан ары иштебей калса, компонент ажыратылган деп эсептелет жана аны тазалоого мүмкүнчүлүк берилет (componentWillUnmount аркылуу). Даракты кыйганда эски DOM түйүндөрү жок кылынат. Компоненттин инстанциялары componentWillUnmount алат.
Эмне үчүн менин компонентим React монтаждалып жатат?
Компоненттер аталык компонент мындан ары көрсөтүлбөй калганда же ата-энелик компонент бул мисалды көрсөтпөгөн жаңыртууну аткарганда ажыратылат. ReactDOM. unmountComponentAtNode да ажыратууну козгойт.
Компоненттерди ажыратууну кантип токтотосуз?
react-router жардамы менен сиз Промпт аркылуу маршрутту өзгөртүүнү оңой эле алдын ала аласыз (бул компонентти ажыратууга жол бербейт). Функция болгон getUserConfirmation таянычын кол менен өткөрүп беришиңиз керек. Ыңгайлаштырылган ырастоо диалогуңузду түзүү үчүн бул функцияны каалаган роутерде (браузерде, эстутумда же хэште) каалагандай өзгөртө аласыз (мис.
Компонентти ажыратуу деген эмне?
componentWillUnmount - бул компонент DOMдан алынып салынганга чейин дароо чакырыла турган акыркы функция. Ал жалпысынан componentWillMount ичинде түзүлгөн ар кандай DOM элементтерин же таймерлерди тазалоо үчүн колдонулат. Пикникте, компонентWillUnmount пикник жуурканыңызды ала электе эле дал келет.
Компонентти эмне козгойтWillUnmount?
componentWillUnmount бирден мурун чакырылаткомпонент ажыратылды жана жок кылынды. Таймерлерди жараксыз кылуу, тармак сурамдарын жокко чыгаруу же componentDidMount. ичинде түзүлгөн бардык жазылууларды тазалоо сыяктуу керектүү тазалоону ушул ыкма менен аткарыңыз.