![](/img/trans.png)
[英][Unhandled promise rejection: TypeError: undefined is not an object (evaluating 'response.data')]
[英]TypeError: 'undefined' is not an object (evaluating 'promise.data.map')
我目前正在為以角度版本實施的項目創建單元測試。 1.2
我創建了一個模擬服務,它返回了與控制器測試一起使用的延遲承諾。 服務方法如下所示:
function getItems() {
var deferred = $q.defer();
deferred.resolve(["item1", "item2"]);
$rootScope.$apply();
return deferred.promise;
}
當我調用此服務方法並執行deferred.resolve時,出現錯誤
TypeError: 'undefined' is not an object (evaluating 'promise.data.map')
有誰知道promise.data.map
是什么以及我需要做什么來糾正錯誤?
這是您的問題的解決方案
在你的問題你試圖調用promise
的前值rootScope
已經在你的控制器,這是造成問題的定義。 因此,它將返回未定義的值。
嘗試在controller
的rootScope
值之后定義rootScope
,這可能會修復錯誤消息
希望此解決方案可以對您有所幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.