Я пытаюсь распечатать задачи, когда использую res.json()
, я ничего не получаю, когда использую res.tasks
. Я получаю еще одну ошибку, отображаются только новые, старые не отображаются, и если страница перезагружается, новые также удаляются.
task.ts
....
loadTasks(): Promise<Task[]> {
const url = `${this.tasksUrl}?access_token=${localStorage.getItem('token')}`;
return this.http.get(url)
.toPromise()
.then(res => res.tasks as Task[]) // res.json()
.catch(error => this.handleError(error, 'Could not load tasks!'));
}
....
Ошибка терминала:
ERROR in src/app/services/task.ts(30,24): error TS2339: Property 'tasks' does not exist on type 'Response'.
Ошибка консоли браузера:
ERROR Error: Uncaught (in promise): TypeError: Cannot read property 'constructor' of undefined
TypeError: Cannot read property 'constructor' of undefined
at FilterByFieldPipe.push../src/app/pipes/filter-by-field.ts.FilterByFieldPipe.transform (filter-by-field.ts:10)
и filter-by-field.ts
import { Pipe, PipeTransform } from '@angular/core';
@Pipe({
name: 'filterByField',
pure: false
})
export class FilterByFieldPipe implements PipeTransform {
transform(items, key, value) {
if (items.constructor === Array) {
return items.filter((item) => item[key] === value);
}
}
}