Zone.js ਇੱਕ ਲਾਇਬ੍ਰੇਰੀ ਹੈ ਜਿਸਨੂੰ Angular ਨੇ ਇਤਿਹਾਸਕ ਤੌਰ 'ਤੇ ਜਦੋਂ change detection ਚਲਾਉਣੀ ਹੈ ਇਹ ਜਾਣਨ ਲਈ ਵਰਤਿਆ ਹੈ। ਇਹ ਬ੍ਰਾਊਜ਼ਰ async APIs ਨੂੰ ਪੈਚ ਕਰਦਾ ਹੈ ਤਾਂ ਕਿ Angular ਆਪਣੇ ਆਪ ਨੂੰ ਕਿਸੇ ਵੀ ਘਟਨਾ ਦਾ ਪਤਾ ਲਗਾ ਸਕੇ ਜੋ ਸਥਿਤੀ ਨੂੰ ਬਦਲ ਸਕਦੀ ਹੈ। Zoneless Angular ਇਸ ਨਿਰਭਰਤਾ ਨੂੰ ਹਟਾਉਂਦਾ ਹੈ, ਇਸ ਦੀ ਥਾਂ signals ਅਤੇ ਸਪੱਸ਼ਟ ਸੂਚਨਾਵਾਂ 'ਤੇ ਨਿਰਭਰ ਕਰਦਾ ਹੈ।
Zone.js ਕੀ ਕਰਦਾ ਹੈ
Zone.js monkey-patches async APIs: setTimeout, addEventListener, Promise,
XHR/fetch, etc. When any of them fires, Zone.js notifies Angular →
Angular runs change detection automatically.
ਇਹ Angular ਦੀ ਆਪਣੇ ਆਪ ਨੂੰ ਅਪਡੇਟ ਕਰਨ ਦੇ ਪਿੱਛੇ ਦਾ "ਜਾਦੂ" ਹੈ: ਤੁਸੀਂ ਇੱਕ HTTP ਜਵਾਬ ਜਾਂ ਕਲਿੱਕ ਦੇ ਬਾਅਦ ਕਿਸੇ ਸੰਪੱਤੀ ਨੂੰ ਬਦਲਦੇ ਹੋ, ਅਤੇ view ਸਿਰਫ ਅਪਡੇਟ ਹੋ ਜਾਂਦਾ ਹੈ — ਕਿਉਂਕਿ Zone.js ਨੇ Angular ਨੂੰ ਦੱਸਿਆ ਕਿ ਇੱਕ async ਘਟਨਾ ਪੂਰੀ ਹੋ ਗਈ ਹੈ।
