Angular
ag-Grid
SD希望可以在grid上加上Drill down
的功能(點擊資料,可以展開/收起詳細資料)。
網路上找到的套件Kendo
,看起來有支援Angular做Detail功能的套件,且有兩種樣板可以選擇。
❌現階段不希望多載入一個套件來做這件事,因此就沒有多研究此套件了。
A1目前是使用ag-Grid的套件來實現grid的功能,但ag-Grid提供相符SD需求的功能是需要付費的。
✔必須想辦法以不付費的方式來達到此效果。
agGrid
- onCellClicked()。
- Full Width Rows。
- HTML+CSS。
💡要使列(row)為全屏寬度(fullWidth)必須實現isFullWidthCell及提供fullWidthCellRenderer
使用isFullWidthCell告知哪些列是為全屏寬度的。
this.gridOptions.api.setRowData(data)後,每列都會跑一次isFullWidthCell。
balance-list.component.ts
提供一個fullWidthCellRenderer,讓grid cellRenderer在進行fullWidth渲染時要使用什麼。
balance-list.component.ts
設定row高度用,可依自己需求指定高度。
balance-list.component.ts
單點擊
a1-grid.component.ts
偵測到點擊後,將資料整理成HTML樣式的字串,在這邊就要將詳細資料的畫面準備好。
CSS世騏學長設計,HTML套世騏學長提供。
balance-list.component.ts