首页 > 解决方案 > Angular 8中polyfills.ts中的zonejs“监听”事件列表不起作用

问题描述

我一直在试图弄清楚如何mousemove在 Angular 中停止事件触发更改检测。提到的一些文章我可以通过添加一行来实现这一点polyfills.ts
(window as any).__zone_symbol__BLACK_LISTED_EVENTS = ['mousemove'];

我已经在stackblitz中尝试过了,它非常有效。但是,棘手的部分是,如果我在本地创建一个 Angular 项目并做同样的事情,它根本不起作用。即使我在polyfills.ts.

我错过了什么?任何见解将不胜感激!

标签: angular

解决方案


感谢@jialipassion,设法搞定了。

  1. 创建一个新文件,zone-flag.ts在同一级别polyfills.ts
  2. 添加:(window as any).__zone_symbol__BLACK_LISTED_EVENTS = ['mousemove'];_zone-flag.ts
// in zone-flag.ts
(window as any).__zone_symbol__BLACK_LISTED_EVENTS = ['mousemove'];
  1. 添加:import './zone-flag'_polyfills.ts
// in polyfills.ts
import './zone-flag';
import 'zone.js/dist/zone'; // Included with Angular CLI.

希望这对可能在此处导航的任何人有所帮助。


推荐阅读