fantasy-ngzorro 2.2.37 → 2.2.39
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -0
- package/bundles/fantasy-ngzorro.umd.js +398 -227
- package/bundles/fantasy-ngzorro.umd.js.map +1 -1
- package/bundles/fantasy-ngzorro.umd.min.js +1 -1
- package/bundles/fantasy-ngzorro.umd.min.js.map +1 -1
- package/esm2015/hd-table/hd-table.component.js +306 -200
- package/esm2015/utils/hd-table-scroll.util.js +3 -2
- package/esm5/hd-table/hd-table.component.js +397 -227
- package/esm5/utils/hd-table-scroll.util.js +3 -2
- package/fantasy-ngzorro.metadata.json +1 -1
- package/fesm2015/fantasy-ngzorro.js +307 -200
- package/fesm2015/fantasy-ngzorro.js.map +1 -1
- package/fesm5/fantasy-ngzorro.js +398 -227
- package/fesm5/fantasy-ngzorro.js.map +1 -1
- package/hd-table/hd-table.component.d.ts +30 -22
- package/package.json +2 -2
- package/utils/hd-table-scroll.util.d.ts +4 -1
|
@@ -102,20 +102,14 @@ export declare class HdTableComponent implements OnInit, OnDestroy {
|
|
|
102
102
|
measuredVirtualItemSize: number;
|
|
103
103
|
/** 记录当前是否处于虚拟滚动模式,用于切换 pageSize 时重建表格 */
|
|
104
104
|
private virtualScrollActive;
|
|
105
|
-
/**
|
|
105
|
+
/** 实际渲染列宽合计(含勾选/序号 + 补宽),合计 footer 表宽用 */
|
|
106
106
|
tableColWidthTotal: number;
|
|
107
|
-
/**
|
|
108
|
-
* fluid:声明列总宽 < 容器时,把差额补到最后一列业务列(不改缓存宽),
|
|
109
|
-
* 并设 scroll.x = 容器宽,避免表宽 100% 均摊撑开勾选列;拖拽改宽仍写 col.width。
|
|
110
|
-
*/
|
|
107
|
+
/** 待按比例分给各业务列的总补宽;只影响展示,不写回 col.width(列宽缓存、拖拽仍用声明宽) */
|
|
111
108
|
fluidExtraWidth: number;
|
|
112
|
-
/**
|
|
113
|
-
* 列总宽未超出容器(fluid 补宽吃满):不需要真正横滚,
|
|
114
|
-
* 用于关掉 ng-zorro fixed-header 带来的常驻 X 轴滚动条。
|
|
115
|
-
*/
|
|
109
|
+
/** 列少、靠补宽吃满容器:模板据此加 hd-table--fluid-x,隐藏 fixed-header 常驻的横滚槽 */
|
|
116
110
|
fluidHorizontal: boolean;
|
|
117
|
-
/**
|
|
118
|
-
private
|
|
111
|
+
/** 各业务列分到的补宽(按列对象取,applyHorizontalLayout 时整表重建) */
|
|
112
|
+
private fluidExtraByCol;
|
|
119
113
|
/** 数据更新后待复位纵向滚动位置 */
|
|
120
114
|
private pendingResetScrollTop;
|
|
121
115
|
/** 当前排序,表格重建后用于恢复表头排序态 */
|
|
@@ -175,7 +169,7 @@ export declare class HdTableComponent implements OnInit, OnDestroy {
|
|
|
175
169
|
* 不锁死时表体会随位数变宽(1→~64px,199995→~67px),合计行对不齐。
|
|
176
170
|
*/
|
|
177
171
|
readonly lineNumberColWidth = 72;
|
|
178
|
-
/** 开启合计时序号列的 left
|
|
172
|
+
/** 开启合计时序号列的 left(跟在勾选列后面) */
|
|
179
173
|
readonly lineNumberLeft: string;
|
|
180
174
|
readonly lineNumberColWidthPx: string;
|
|
181
175
|
/**
|
|
@@ -183,10 +177,20 @@ export declare class HdTableComponent implements OnInit, OnDestroy {
|
|
|
183
177
|
* 列少时也会设 scroll.x(补宽吃满),合计走固定表宽。
|
|
184
178
|
*/
|
|
185
179
|
readonly isTotalFooterFluid: boolean;
|
|
186
|
-
|
|
180
|
+
private isColVisible;
|
|
181
|
+
/** 业务列声明宽:未配置时按 fixColWidth */
|
|
182
|
+
private getColDeclaredWidth;
|
|
183
|
+
/** 声明列宽合计:勾选列 + 序号列 + 可见业务列,不含补宽 */
|
|
184
|
+
private getDeclaredColWidthTotal;
|
|
185
|
+
/** 模板里 th / td / 合计 col 用的列宽:声明宽 + 该列按比例分到的补宽 */
|
|
187
186
|
getColDisplayWidth(col: HdTableColumn): number;
|
|
188
|
-
/**
|
|
189
|
-
|
|
187
|
+
/**
|
|
188
|
+
* 把 fluidExtra 按各可见业务列声明宽比例分配(最大余数法),
|
|
189
|
+
* 勾选列 / 序号列不参与;保证各列补宽之和等于 fluidExtra。
|
|
190
|
+
*/
|
|
191
|
+
private rebuildFluidExtraByCol;
|
|
192
|
+
/** 把横向布局结果写回组件状态(dealScroll / syncHorizontalScroll 共用) */
|
|
193
|
+
private applyHorizontalLayout;
|
|
190
194
|
/** fluid → 100%;固定 → scroll.x(与表体同一套横向宽度) */
|
|
191
195
|
readonly totalFooterTableWidth: string;
|
|
192
196
|
/** 当前页行号(跨页连续,从 1 开始) */
|
|
@@ -199,6 +203,8 @@ export declare class HdTableComponent implements OnInit, OnDestroy {
|
|
|
199
203
|
initTable(): void;
|
|
200
204
|
/** 虚拟/普通模式切换时重建表格,避免残留滚动容器 */
|
|
201
205
|
applyTableScrollMode(forceRemount?: boolean): void;
|
|
206
|
+
/** 销毁并重建 nz-table:等 DOM 出来后再按真实容器宽重算一次横向布局 */
|
|
207
|
+
private remountTable;
|
|
202
208
|
/** 重建前预设 scroll,保证 AfterViewInit 时 header/body 结构已正确 */
|
|
203
209
|
private presetScrollBeforeRemount;
|
|
204
210
|
private afterTableRender;
|
|
@@ -234,16 +240,13 @@ export declare class HdTableComponent implements OnInit, OnDestroy {
|
|
|
234
240
|
isDangerBtn(btn: OperateBtn, data: any): boolean;
|
|
235
241
|
/** 虚拟滚动开启时使用视口最大高度 */
|
|
236
242
|
private getVirtualScrollY;
|
|
237
|
-
private hasTableData;
|
|
238
243
|
/**
|
|
239
|
-
*
|
|
240
|
-
*
|
|
241
|
-
*
|
|
242
|
-
* 比较是否超宽用 offsetWidth(含 Y 槽),避免「仅因纵滚条」误开横滚;
|
|
243
|
-
* 补宽目标用 clientWidth,且 scroll.x 用 floor,避免表宽多 1px 逼出 X 轴滚动条。
|
|
244
|
+
* 按声明列宽合计 + 容器宽算出横向布局。
|
|
245
|
+
* 判断「是否超宽」用 offsetWidth(含竖滚条槽),避免只因竖滚条就误开横滚;
|
|
246
|
+
* 补宽目标用 clientWidth 并向下取整,避免表宽多 1px 逼出横滚条。
|
|
244
247
|
*/
|
|
245
248
|
private resolveHorizontalLayout;
|
|
246
|
-
/**
|
|
249
|
+
/** 表格渲染后按真实容器宽校正横向布局;只改 x,y 保持不变 */
|
|
247
250
|
private syncHorizontalScroll;
|
|
248
251
|
/** 手动把表体横向滚动同步到表头 / 合计 footer(兜底 ng-zorro 监听丢失的情况) */
|
|
249
252
|
private syncHeaderBodyScrollLeft;
|
|
@@ -269,6 +272,11 @@ export declare class HdTableComponent implements OnInit, OnDestroy {
|
|
|
269
272
|
private bindViewportResizeSync;
|
|
270
273
|
private unbindViewportResizeSync;
|
|
271
274
|
private scheduleViewportScrollSync;
|
|
275
|
+
/**
|
|
276
|
+
* 左/右冻结偏移按展示宽累计(fluid 比例补宽后各列变宽,不能再用声明宽)。
|
|
277
|
+
* 须在 applyHorizontalLayout 之后调用。
|
|
278
|
+
*/
|
|
279
|
+
private refreshStickyOffsets;
|
|
272
280
|
dealScroll(): void;
|
|
273
281
|
currentPageDataChange($event: any): void;
|
|
274
282
|
search(reset: boolean): void;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "fantasy-ngzorro",
|
|
3
|
-
"version": "2.2.
|
|
4
|
-
"description": "fix:hd-
|
|
3
|
+
"version": "2.2.39",
|
|
4
|
+
"description": "fix:hd-table 列少时差额按声明宽比例分到各业务列",
|
|
5
5
|
"peerDependencies": {
|
|
6
6
|
"moment": "^2.24.0",
|
|
7
7
|
"ng-zorro-antd": "^8.5.2",
|
|
@@ -11,7 +11,10 @@ export declare function measureTableColWidth(nzTable: NzTableComponent): number;
|
|
|
11
11
|
* 这里用 offsetWidth(含滚动条槽)作为屏幕可展示宽度。
|
|
12
12
|
*/
|
|
13
13
|
export declare function getTableScrollXViewportWidth(nzTable: NzTableComponent, hostClass?: string): number;
|
|
14
|
-
/**
|
|
14
|
+
/**
|
|
15
|
+
* 无数据或列宽未超出容器时不启用横向 scroll(表宽 100%、table-layout: auto)。
|
|
16
|
+
* auto 布局下单元格 max-width 不生效,固定宽列会被均摊撑开;需要锁宽的场景见 hd-table 的横向布局。
|
|
17
|
+
*/
|
|
15
18
|
export declare function resolveAutoTableScroll(nzTable: NzTableComponent, hasData: boolean, colWidth?: number): HdTableScrollConfig | null;
|
|
16
19
|
/** 取 ng-zorro 分体表头 / 表体滚动容器(含虚拟滚动) */
|
|
17
20
|
export declare function getNzTableScrollElements(nzTable: NzTableComponent): {
|