ngx-datatable 自动改变宽度 resize recalculate

import { DatatableComponent } from "@swimlane/ngx-datatable";
import {AfterContentChecked, ChangeDetectorRef, Directive} from "@angular/core";

@Directive({ selector: '[ngx-resize-watcher]' })
export class NgxResizeWatcherDirective implements AfterContentChecked {
    private latestWidth: number;

    constructor(private table: DatatableComponent, public ref: ChangeDetectorRef) { }

    ngAfterContentChecked() {
        if (this.table && this.table.element.clientWidth !== this.latestWidth) {
            this.latestWidth = this.table.element.clientWidth;
            this.table.recalculate();
            this.ref.markForCheck();
            window.dispatchEvent(new Event('resize'));
        }
    }
}

 

将以上复制到你的新建文件中,并在相应module的declarations中声明 和 exports导出。

使用方法:

<ngx-datatable class="bootstrap" ngx-resize-watcher>
<ngx-datatable>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值