如何在滚动时更改 ngx 数据表列的样式?

how change a style of ngx datatable column on scroll?

我想在滚动时将特定样式添加到 frozenLeft ngx 数据表列。到目前为止,我所取得的成就是在滚动时触发函数调用并将标志设置为 true 以指示应应用样式。

onScroll(event){
    if(event.offsetX > 0){
        this.flag=true;
    }
}

但是,在 ng-datatable 列中,[ngClass]="{'custom-style': flag}" 不起作用(class 没有附加到元素)。 还尝试了 [cellClass] 我无法弄清楚如何使用 [cellClass]="getClass" 在我滚动时触发更改。

感谢您的帮助。

您可以在 ngClass 中使用条件并根据它应用 class:

<div [ngClass]="flag ? 'applyStyle' : 'noStyle'"> </div>

如果这不起作用,可能是视图封装有问题。您需要将其删除。您应该检查 线程,它通过简单的步骤解释了如何做到这一点。

此外,请确保您的更改检测策略设置为默认设置,或者进行更改检测(如果是 OnPush,这将更新视图属性。