From 4e4cae085739fd5e72e047d368351bfd6ceaf4e3 Mon Sep 17 00:00:00 2001 From: fengxiang <110431245@qq.com> Date: Sun, 25 Mar 2018 12:20:40 +0800 Subject: [PATCH] grid 冻结列 上下滚动实现 --- src/app/routes/analysis/query/query.component.ts | 18 +++++++++++++----- 1 files changed, 13 insertions(+), 5 deletions(-) diff --git a/src/app/routes/analysis/query/query.component.ts b/src/app/routes/analysis/query/query.component.ts index ec9e65e..fca727c 100644 --- a/src/app/routes/analysis/query/query.component.ts +++ b/src/app/routes/analysis/query/query.component.ts @@ -65,6 +65,7 @@ // public grid.data: {sensor: Sensor, data: string [], weight?: number} [] = []; // ������������������������������������������ public sensorNameScrollLeft = 0; + public sensorNameScrollTop = 0; @ViewChild(NzTreeComponent) private tree: NzTreeComponent; private _timeType: {showTime: boolean|{[key: string]: Function|boolean}, mode: 'month' | 'day', dateFormat: string } = {showTime: false, mode: 'day', dateFormat: 'YYYY���MM���DD���'}; // ���key-value������,������������������ @@ -262,6 +263,7 @@ // ������ ������������������ if (this._monitorPoint !== value) { this._monitorPoint = value; // ��������������������������������������������������������� + this._device = null; // ��������������� this.devicesChange(); } // ������null ������������������������������ @@ -447,6 +449,8 @@ // ��������������������������������� this.tableWidth = this.grid.columns.length * 80 + 160; this.reloadChart(); + // ������������������ + this.reloadChartTitle(); // ������������ this.grid.data = []; this.http.post(environment.SERVER_BASH_URL + '/report/line-chart', lineChartCriteria).subscribe( @@ -488,6 +492,7 @@ $('.ant-table-body').scroll( () => { this.sensorNameScrollLeft = $('.ant-table-body').scrollLeft(); + this.sensorNameScrollTop = -$('.ant-table-body').scrollTop(); } ); } @@ -554,8 +559,8 @@ return this.grid.data[this.chartSelectedIndex].sensor.unit; } // ������������������ ������������ - public _chartTitleTemp: string; - public get chartTitle(): string { + public _chartTitleTemp = ''; + public reloadChartTitle(): void { const names = ['������', '������', '������', '������']; switch ( this.dataCondition.areaRange ) { case AreaRange.MONITORPOINT : @@ -573,17 +578,20 @@ if ( this.grid.data.length > this.chartSelectedIndex) { names[3] = this.grid.data[this.chartSelectedIndex].sensor.name; } - return names.join(' ') + ' ������'; + const title = names.join(' ') + ' ������'; + if (title.trim() !== this._chartTitleTemp.trim()) { + this._chartTitleTemp = title; + } } public switchSensor(index: number): void { this.chartSelectedIndex = index; this.chartLoading = true; - this._chartTitleTemp = this.chartTitle; + this.reloadChartTitle(); setTimeout(() => { const series = [{type: 'line', data: this.grid.data[index].data}]; this.echartsIntance.setOption({ title: { - text: this.chartTitle + text: this._chartTitleTemp }, yAxis : [ { -- Gitblit v1.8.0