Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/419.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 由于未知原因,浏览器控制台元素会像渲染一样闪烁,尽管它们不会闪烁_Javascript_Html_Angular - Fatal编程技术网

Javascript 由于未知原因,浏览器控制台元素会像渲染一样闪烁,尽管它们不会闪烁

Javascript 由于未知原因,浏览器控制台元素会像渲染一样闪烁,尽管它们不会闪烁,javascript,html,angular,Javascript,Html,Angular,我有一些页面在应用程序中使用通用模块。出于未知原因,我一直看到浏览器控制台上的tr元素以紫色闪烁,就像它们再次被渲染一样 我看不出这种行为的原因,这是不必要的 我如何以另一种方式调试或检查是什么导致了它 请看附件中的图片 编辑: 我尝试将onChange生命周期添加到我的组件中,以查看是否有我不知道的更改。但它根本不会触发(当这种情况发生时) 原因是代码中的某些内容不断触发角度变化检测器。此类操作的一个例子可能是错误使用了某些组件生命周期挂钩,如ngAfterViewChecked或ngDoCh

我有一些页面在应用程序中使用通用模块。出于未知原因,我一直看到浏览器控制台上的tr元素以紫色闪烁,就像它们再次被渲染一样

我看不出这种行为的原因,这是不必要的

我如何以另一种方式调试或检查是什么导致了它

请看附件中的图片

编辑: 我尝试将onChange生命周期添加到我的组件中,以查看是否有我不知道的更改。但它根本不会触发(当这种情况发生时)


原因是代码中的某些内容不断触发角度变化检测器。此类操作的一个例子可能是错误使用了某些组件生命周期挂钩,如ngAfterViewChecked或ngDoCheck。

但我的代码中不存在这些挂钩。此外,我还添加了更改生命周期以检查是否有更改。未触发。在DOM事件上未触发ngOnChange。要检查问题是否存在,请将以下内容添加到components.ts文件中,并查看它运行了多少次:
ngAfterViewChecked(){console.log(123);}
谢谢,它确实显示了很多输入。你知道如何找到原因并阻止它吗?这是一个绩效方面的问题这绝对是一个绩效方面的问题。如何找到它的源代码-需要查看项目中的更多代码。例如,我在某个项目中看到这样的代码,这导致了与您类似的问题:
ngAfterViewChecked(){window.dispatchEvent(new Event('resize');}
也可能是您对表进行的一些数据轮询,而不使用trackBy。很多可能的原因。谢谢,实际上我们使用的是从angular Mat混合其他第三方库的CDK虚拟滚动。也许是原因,我会查一查。