Я пытаюсь отсортировать таблицу, но сортировка не выполняется. Я обнаружил, что проблема не происходит. Этого не происходит, потому что mat-sort-header
не соответствует модели. Но проблема в том, что мой объект JSON не совпадает с этим примером . Также для части имени мои данные поступают из firstName
, middleName
, lastName
, и я должен отображать его только как имя. Позвольте мне показать мой объект JSON и мой HTML ниже:
JSON объект, полученный от API
[
{
"exam": {
"examCategory": {
"examCategoryName": "Freshers",
"id": 157,
"timestamp": "2020-07-07 11:55:22.425"
},
"examName": "First Demo",
"timestamp": "2020-07-07 15:17:32.0"
},
"id": 94,
"user": {
"id": 9,
"firstName": "AVISHEK",
"middleName": "DATTA",
"lastName": "RAY",
"timestamp": "2020-07-07 15:06:58.186"
},
"timestamp": "2020-07-07 13:15:24.898"
}
]
example.component. html
isplayMode="flat" class="mat-table" [class.d-none]="isLoading || length==0">
<section matSort class="mat-elevation-z2 mat-header-row">
<span class="mat-header-cell" mat-sort-header="user.id">User Id</span>
<span class="mat-header-cell" mat-sort-header="name">Name</span>
<span class="mat-header-cell" mat-sort-header="examName">Exam Name</span>
<span class="mat-header-cell" mat-sort-header="examCategoryName">Exam Category</span>
<span class="mat-header-cell" mat-sort-header="marks">Marks Obtained</span>
</section>
<mat-expansion-panel *ngFor="let result of selectedResult | async">
<mat-expansion-panel-header class="mat-row">
<span class="mat-cell">{{ result.user.id }}</span>
<span class="mat-cell">
{{ result.user.firstName | titlecase }}
{{ result.user.middleName | titlecase }}
{{ result.user.lastName | titlecase }}
</span>
<span class="mat-cell">{{ result.exam.examName }}</span>
<span class="mat-cell">{{ result.exam.examCategory.examCategoryName }}</span>
</mat-expansion-panel-header>
<div class="row">
// Any Body //
</div>
</mat-expansion-panel>
</mat-accordion>
Как и в TS, я объявил selectedResult
как selectedResult : Observable<any[]>
Я сам дал mat-sort-header
имен. Что мне нужно изменить, чтобы сортировка заработала?