Angular 角形ngrx鼠标和桌子
我正在用angular 8和ngrx构建一个可能超过1000个单元格的表格 有两个组件,一个包含整个表,其中包含构建该表所需的所有Angular 角形ngrx鼠标和桌子,angular,performance,html-table,ngrx,mouseenter,Angular,Performance,Html Table,Ngrx,Mouseenter,我正在用angular 8和ngrx构建一个可能超过1000个单元格的表格 有两个组件,一个包含整个表,其中包含构建该表所需的所有*ngFor,另一个用于单个表单元格 所有单元格都是相同的组件,它们在输入中接收一些数据以标识自己,然后为存储创建两个可观察对象:一个用于布局更改(显示/隐藏/切换复选框),另一个用于“悬停”事件 单元格调度两个事件:状态更改(单元格已被单击)和鼠标事件 目前,click事件非常顺利,但我仍然从Chrome-like收到一些警告 zone.js:1704 [Viola
*ngFor
,另一个用于单个表单元格
所有单元格都是相同的组件,它们在输入中接收一些数据以标识自己,然后为存储创建两个可观察对象:一个用于布局更改(显示/隐藏/切换复选框),另一个用于“悬停”事件
单元格调度两个事件:状态更改(单元格已被单击)和鼠标事件
目前,click
事件非常顺利,但我仍然从Chrome-like收到一些警告
zone.js:1704 [Violation] 'click' handler took 181ms
zone.js:3068 [Violation] 'setTimeout' handler took 152ms
onmouseinter
不可管理,会触发太多事件并挂起系统(它从不调用onmouseleave
),而且将信号量设置为仅调度一个事件也不起作用,其值永远不会更改
我已经在单元格组件中使用ChangeDetectionStrategy.OnPush,
,在模板中使用distinctUntilChanged
管道,以减少事件数量
我问的是如何正确使用鼠标事件以及如何调整性能,因为该表必须使用1000多个单元格
谢谢我想推荐一些类似或的东西。渲染如此多的行将导致一些问题,而不需要一些技巧。如果您不显示任何有关当前如何执行的代码,我们无法告诉您性能问题在哪里。