2016-03-15 4 views
0

Я следовал this answer по Thierry Templier, но столкнуться с некоторыми проблемами при определении перехватчиков ошибок (других перехватчики работают).Перехват ошибок в Angular2 - проблема с уловом

я следующее:

get(url: string, options?: RequestOptionsArgs): Observable<Response> { 
    console.log('get...'); 
    return super.get(url, options).catch(res => { 
    this.router.navigate(['Login']); 
    return Observable.of(res) 
    }); 
} 

Какие броски:

vendor.min.js:38333 ORIGINAL EXCEPTION: TypeError: _super.prototype.get.call(...).catch is not a function

Есть идеи?

ответ

3

Я думаю, что вы, возможно, забыли Импортируйте catch оператор в модуле, где вы определяете класс перехватчика:

import 'rxjs/add/operator/catch'; 
+1

Любая идея, почему я получаю «Ошибка типа: result.subscribe не является функцией» ошибки, (точно такой же пример, как в вопросе) – uksz

+1

Я думаю, что вы могли бы попробовать это: 'return Observable.of (res);' вместо 'return res;' –

+0

amazing! откуда у вас есть все эти знания? можете ли вы указать какие-либо хорошие книги/статьи? похоже, что вы waaay впереди кривой :) – uksz

Смежные вопросы