调用gridApi.deselectAll()是否始终触发onSelectionChanged等事件?即使无选中行变化?
Ag-Grid调用
deselectAll()的事件触发规则 - 调用
gridApi.deselectAll()时,不会始终触发onSelectionChanged和onRowSelected事件,只有当选中行的集合发生实际变化时,这两个事件才会被触发。 - 举个例子:如果当前表格已经没有任何选中的行,此时调用
deselectAll(),因为没有任何行的选择状态被改变,所以不会触发这两个事件;反之,如果原本有选中的行,调用该方法后所有选中行被取消选择,状态发生了变更,就会触发事件。 - Ag-Grid的这个设计逻辑是合理的:事件的触发以「实际状态变更」为前提,避免无意义的事件回调执行,减少不必要的性能开销。
内容的提问来源于stack exchange,提问作者Antti Isomursu
相关产品推荐
相关产品推荐

