@@ -59,24 +59,24 @@ <h3>CdkTable Example</h3>
5959 </ div >
6060
6161 < cdk-table #table matSort
62- [dataSource] ="dataSource "
63- [trackBy] ="userTrackBy ">
62+ [dataSource] ="dataSource "
63+ [trackBy] ="userTrackBy ">
6464
6565 <!-- Column Definition: ID -->
6666 < ng-container cdkColumnDef ="userId ">
6767 < cdk-header-cell *cdkHeaderCellDef
6868 mat-sort-header arrowPosition ="before ">
69- ID
70- </ cdk-header-cell >
69+ ID
70+ </ cdk-header-cell >
7171 < cdk-cell *cdkCellDef ="let row "> {{row.id}} </ cdk-cell >
7272 </ ng-container >
7373
7474 <!-- Column Definition: Progress -->
7575 < ng-container cdkColumnDef ="progress ">
7676 < cdk-header-cell *cdkHeaderCellDef
77- mat-sort-header start ="desc ">
78- Progress
79- </ cdk-header-cell >
77+ mat-sort-header start ="desc ">
78+ Progress
79+ </ cdk-header-cell >
8080 < cdk-cell *cdkCellDef ="let row ">
8181 < div class ="demo-progress-stat "> {{row.progress}}%</ div >
8282 < div class ="demo-progress-indicator-container ">
@@ -91,30 +91,30 @@ <h3>CdkTable Example</h3>
9191 <!-- Column Definition: Name -->
9292 < ng-container cdkColumnDef ="userName ">
9393 < cdk-header-cell *cdkHeaderCellDef mat-sort-header >
94- Name
95- </ cdk-header-cell >
94+ Name
95+ </ cdk-header-cell >
9696 < cdk-cell *cdkCellDef ="let row "> {{row.name}} </ cdk-cell >
9797 </ ng-container >
9898
9999 <!-- Column Definition: Color -->
100100 < ng-container cdkColumnDef ="color ">
101101 < cdk-header-cell *cdkHeaderCellDef
102- mat-sort-header disableClear >
103- Color
104- </ cdk-header-cell >
102+ mat-sort-header disableClear >
103+ Color
104+ </ cdk-header-cell >
105105 < cdk-cell *cdkCellDef ="let row " [style.color] ="row.color "> {{row.color}} </ cdk-cell >
106106 </ ng-container >
107107
108108 < cdk-header-row *cdkHeaderRowDef ="displayedColumns "> </ cdk-header-row >
109109 < cdk-row *cdkRowDef ="let row; columns: displayedColumns;
110110 let first = first; let last = last; let even = even; let odd = odd "
111- [ngClass] ="{
111+ [ngClass] ="{
112112 'demo-row-highlight-first': highlights.has('first') && first,
113113 'demo-row-highlight-last': highlights.has('last') && last,
114114 'demo-row-highlight-even': highlights.has('even') && even,
115115 'demo-row-highlight-odd': highlights.has('odd') && odd
116116 } ">
117- </ cdk-row >
117+ </ cdk-row >
118118 </ cdk-table >
119119</ mat-card >
120120
@@ -168,7 +168,7 @@ <h3>MatTable Example</h3>
168168 < mat-paginator #paginator
169169 [length] ="_peopleDatabase.data.length "
170170 [pageSize] ="10 "
171- [pageSizeOptions] ="[5, 10, 25, 100] ">
171+ [pageSizeOptions] ="[5, 10, 25, 100] ">
172172 </ mat-paginator >
173173</ div >
174174
@@ -200,13 +200,71 @@ <h3> MatTable Using 'When' Rows for Interactive Details</h3>
200200
201201 < mat-header-row *matHeaderRowDef ="['userId', 'userName'] "> </ mat-header-row >
202202 < mat-row *matRowDef ="let row; columns: ['userId', 'userName']; "
203- matRipple
204- class ="user-row "
205- [style.borderBottomColor] ="expandedPerson == row ? 'transparent' : '' "
206- (click) ="expandedPerson = row; wasExpanded.add(row) "> </ mat-row >
203+ matRipple
204+ class ="user-row "
205+ [style.borderBottomColor] ="expandedPerson == row ? 'transparent' : '' "
206+ (click) ="expandedPerson = row; wasExpanded.add(row) "> </ mat-row >
207207 < mat-row *matRowDef ="let row; columns: ['details']; when: isDetailRow "
208- [@detailExpand] ="row.data == expandedPerson ? 'expanded' : 'collapsed' "
209- style ="overflow: hidden ">
208+ [@detailExpand] ="row.data == expandedPerson ? 'expanded' : 'collapsed' "
209+ style ="overflow: hidden ">
210210 </ mat-row >
211211 </ mat-table >
212- </ mat-card >
212+ </ mat-card >
213+
214+ < h3 > MatTable With MatTableDataSource Example</ h3 >
215+
216+ < mat-form-field >
217+ < input matInput [formControl] ="filter ">
218+ </ mat-form-field >
219+
220+ < div class ="demo-table-container demo-mat-table-example mat-elevation-z4 ">
221+
222+ < table-header-demo (shiftColumns) ="displayedColumns.push(displayedColumns.shift()) "
223+ (toggleColorColumn) ="toggleColorColumn() ">
224+ </ table-header-demo >
225+
226+ < mat-table [dataSource] ="matTableDataSource " [trackBy] ="userTrackBy " matSort
227+ #sortForDataSource ="matSort ">
228+
229+ <!-- Column Definition: ID -->
230+ < ng-container cdkColumnDef ="userId ">
231+ < mat-header-cell *matHeaderCellDef mat-sort-header > ID </ mat-header-cell >
232+ < mat-cell *matCellDef ="let row "> {{row.id}} </ mat-cell >
233+ </ ng-container >
234+
235+ <!-- Column Definition: Progress -->
236+ < ng-container matColumnDef ="progress ">
237+ < mat-header-cell *matHeaderCellDef mat-sort-header > Progress </ mat-header-cell >
238+ < mat-cell *matCellDef ="let row ">
239+ < div class ="demo-progress-stat "> {{row.progress}}%</ div >
240+ < div class ="demo-progress-indicator-container ">
241+ < div class ="demo-progress-indicator "
242+ [style.background] ="row.progress > 50 ? 'green' : 'red' "
243+ [style.opacity] ="getOpacity(row.progress) "
244+ [style.width.%] ="row.progress "> </ div >
245+ </ div >
246+ </ mat-cell >
247+ </ ng-container >
248+
249+ <!-- Column Definition: Name -->
250+ < ng-container matColumnDef ="userName ">
251+ < mat-header-cell *matHeaderCellDef mat-sort-header > Name </ mat-header-cell >
252+ < mat-cell *matCellDef ="let row "> {{row.name}} </ mat-cell >
253+ </ ng-container >
254+
255+ <!-- Column Definition: Color -->
256+ < ng-container matColumnDef ="color ">
257+ < mat-header-cell *matHeaderCellDef mat-sort-header > Color</ mat-header-cell >
258+ < mat-cell *matCellDef ="let row " [style.color] ="row.color "> {{row.color}} </ mat-cell >
259+ </ ng-container >
260+
261+ < mat-header-row *matHeaderRowDef ="displayedColumns "> </ mat-header-row >
262+ < mat-row *matRowDef ="let row; columns: displayedColumns "> </ mat-row >
263+
264+ </ mat-table >
265+
266+ < mat-paginator #paginatorForDataSource
267+ [length] ="_peopleDatabase.data.length "
268+ [pageSizeOptions] ="[10, 25, 100] ">
269+ </ mat-paginator >
270+ </ div >
0 commit comments