[英]ERROR Error: Uncaught (in promise): TypeError: Cannot read property 'id' of undefined
[英]ERROR Error: Uncaught (in promise): TypeError: Cannot read property 'map' of undefined
僅當它嘗試從catch
返回值時,才會發生以下錯誤。 希望我在這里做的是根本錯誤的事情。請給我一個提示。為什么我不能從catch
返回observable
到的東西?
.TS
getMyTopic() {
return this.topicSer.getMyTopics().map((res: any) => res.json()).map((res: any) => res = res.categories)
.catch((err: any) => {
console.log('err', err);
return []
})
}
provider.ts
getMyTopics(): Observable<any> {
if (typeof this.userService.userDetails != 'undefined') {
this.localCacheService.getItem(this.localCacheService.discoverTopicsKey).then((val) => {
if (val != null && val.length == 0) return this.apiService.get(config.discover_topic_WITHAUTH);
}).catch(() => {
return this.apiService.get(config.discover_topic_WITHOUTAUTH);//here is the issue
});
}
錯誤
ERROR Error: Uncaught (in promise): TypeError: Cannot read property 'map' of undefined
TypeError: Cannot read property 'map' of undefined
at Discover.webpackJsonp.402.Discover.getMyTopic (discover.ts:123)
at Discover.webpackJsonp.402.Discover.getData (discover.ts:69)
at discover.ts:51
at t.invoke (polyfills.js:3)
at Object.onInvoke (core.js:4626)
at t.invoke (polyfills.js:3)
at r.run (polyfills.js:3)
at polyfills.js:3
at t.invokeTask (polyfills.js:3)
at Object.onInvokeTask (core.js:4617)
at Discover.webpackJsonp.402.Discover.getMyTopic (discover.ts:123)
at Discover.webpackJsonp.402.Discover.getData (discover.ts:69)
at discover.ts:51
at t.invoke (polyfills.js:3)
at Object.onInvoke (core.js:4626)
at t.invoke (polyfills.js:3)
at r.run (polyfills.js:3)
at polyfills.js:3
at t.invokeTask (polyfills.js:3)
at Object.onInvokeTask (core.js:4617)
at c (polyfills.js:3)
at polyfills.js:3
at t.invokeTask (polyfills.js:3)
at Object.onInvokeTask (core.js:4617)
at t.invokeTask (polyfills.js:3)
at r.runTask (polyfills.js:3)
at o (polyfills.js:3)
at e.invokeTask [as invoke] (polyfills.js:3)
at p (polyfills.js:2)
at IDBRequest.v (polyfills.js:2)
defaultErrorLogger @ core.js:1350
ErrorHandler.handleError @ core.js:1411
IonicErrorHandler.handleError @ ionic-error-handler.js:61
next @ core.js:5373
schedulerFn @ core.js:4220
SafeSubscriber.__tryOrUnsub @ Subscriber.js:238
SafeSubscriber.next @ Subscriber.js:185
Subscriber._next @ Subscriber.js:125
Subscriber.next @ Subscriber.js:89
Subject.next @ Subject.js:55
EventEmitter.emit @ core.js:4200
(anonymous) @ core.js:4648
t.invoke @ polyfills.js:3
r.run @ polyfills.js:3
NgZone.runOutsideAngular @ core.js:4574
onHandleError @ core.js:4648
t.handleError @ polyfills.js:3
r.runGuarded @ polyfills.js:3
(anonymous) @ polyfills.js:3
n.microtaskDrainDone @ polyfills.js:3
o @ polyfills.js:3
e.invokeTask @ polyfills.js:3
p @ polyfills.js:2
v @ polyfills.js:2
IndexedDB (async)
(anonymous) @ localforage.js:826
t.invoke @ polyfills.js:3
onInvoke @ core.js:4626
t.invoke @ polyfills.js:3
r.run @ polyfills.js:3
(anonymous) @ polyfills.js:3
t.invokeTask @ polyfills.js:3
onInvokeTask @ core.js:4617
t.invokeTask @ polyfills.js:3
r.runTask @ polyfills.js:3
o @ polyfills.js:3
e.invokeTask @ polyfills.js:3
p @ polyfills.js:2
v @ polyfills.js:2
getMyTopics
方法不返回任何內容。 當catch
操作符應返回Observable時,它還將返回一個空數組。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.