Angular හි ngOnDestroy හුක්
ngOnDestroy හුක් එක සංරචකය ඉවත් කරන විට
ක්රියාත්මක වේ. මෙම හුක් එක තුළ, ඔබට
සම්පත් නිදහස් කිරීමට, මූලද්රව්ය සිදුවීම්වලට
දායකත්වය ඉවත් කිරීමට, ටයිමර් නතර කිරීමට සහ
සමාන දේවල් කළ හැකිය.
Angular හි සංරචකයක් නිර්මාණය කිරීම සහ ඉවත් කිරීම
සිදුවන්නේ, එය if කොන්දේසියක් භාවිතයෙන් ප්රතික්රියාශීලීව
පෙන්වනු ලබන විට සහ සැඟවෙන විට ය.
එනම්, Angular සංරචක සරලව සඟවන්නේ නැත,
ඒවා ඉවත් කර නැවත ආපසු ලබා දෙයි.
එසේම, සංරචක පුනරාවර්තන තුළ ප්රතික්රියාශීලීව පෙරළන විටද ඒවා නිර්මාණය වී ඉවත් කෙරේ. මෙම අවස්ථාවේ දී, Angular ද සංරචක නිර්මාණය කර ඉවත් කරයි.
අපි ප්රායෝගිකව උත්සාහ කරමු. OnDestroy අන්තර්මුඛය
ආයාත කරමු:
import { OnDestroy } from '@angular/core';
එය පන්තියට සම්බන්ධ කරමු:
export class UserComponent implements OnDestroy {
}
දැන් අපගේ හුක් එක ලියමු:
export class UserComponent implements OnDestroy {
constructor() {
console.log('ගොඩනැගිලිකරු ආරම්භ විය');
}
ngOnDestroy() {
console.log('onDestroy යොදන ලදී');
}
}
ප්රතික්රියාශීලී if එකක් සාදන්න, එහි
ආධාරයෙන් ළමා සංරචකය පෙන්වනු ඇත. අධ්යයනය කළ
හුක් එකේ ක්රියාකාරිත්වය පරීක්ෂා කරන්න.
මව් සංරචකය තුළ පරිශීලක නම් අරාවක් ලබා දී ඇත. පරිශීලකයෙකු සමඟ ළමා සංරචකයක් සාදන්න. අරාව පුච්ඡාකාරක ලූපයකින් පෙරළන්න සහ පරිශීලකයන් සමඟ සංරචක ප්රතිදානය කරන්න. බොත්තමක් සාදන්න, එය එබූ විට මූලද්රව්ය අරාවෙන් ඉවත් වේ. ළමා සංරචකවල ඉවත් කිරීමේ හුක් එක ක්රියාත්මක වන බව පරීක්ෂා කරන්න.