Skip to main content

Чи можна повністю вимкнути Zone.js при використанні signals?

Так, можна.

Сигнали самі відстежують зміни й оновлюють шаблон без Zone.js. Angular тепер уміє працювати повністю реактивно - без "зони", яка раніше перехоплювала всі події й викликала оновлення вручну.

Як це робиться:

У main.ts під час запуску застосунку вказують:

ts
import { bootstrapApplication } from '@angular/platform-browser'; import { AppComponent } from './app/app.component'; bootstrapApplication(AppComponent, { zone: 'noop', // вимикає Zone.js });

Що далі:

  • усе, що базується на signal, computed та effect, продовжить працювати;
  • Angular оновлюватиме тільки ті частини шаблону, які залежать від сигналів;
  • жодні "зони" більше не потрібні.

Підсумок: так, сигнали дозволяють повністю вимкнути Zone.js - і при цьому застосунок залишається реактивним і оновлюється сам.

Коротка відповідь

Для співбесіди
Premium

Коротка відповідь допоможе вам впевнено відповідати на цю тему під час співбесіди.