От автора: приложения Angular 2 поддерживают функцию обработки ошибок. Для этого подключается библиотека ReactJS, а затем используется ее функция catch.
Давайте рассмотрим, как обрабатываются в Angular ошибки, и какой код для этого нужен. Его можно добавить в верхней части раздела для операций CRUD с использованием http. Добавьте в файл product.service.ts следующий код:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
import { Injectable } from '@angular/core'; import { Http , Response } from '@angular/http'; import { Observable } from 'rxjs/Observable'; import 'rxjs/add/operator/map'; import 'rxjs/add/operator/do'; import 'rxjs/add/operator/catch'; import { IProduct } from './product'; @Injectable() export class ProductService { private _producturl = 'app/products.json'; constructor(private _http: Http){} getproducts(): Observable<IProduct[]> { return this._http.get(this._producturl) .map((response: Response) => <IProduct[]> response.json()) .do(data => console.log(JSON.stringify(data))) .catch(this.handleError); } private handleError(error: Response) { console.error(error); return Observable.throw(error.json().error()); } } |
Функция catch содержит ссылку на функцию обработчика ошибок.
Функции обработчика ошибок отправляет сообщение об ошибке на консоль. Мы также возвращаем ошибку обратно в основную программу, чтобы продолжить выполнение.
Теперь, всякий раз, когда вы получаете сообщение об ошибке, оно будет перенаправлено в консоль ошибок браузера.
Источник: //www.tutorialspoint.com/
Редакция: Команда webformyself.