我知道,在摘要循环中调用$digest或$apply程序将导致“$摘要已在进行中”错误,但我不知道为什么我在这里得到它。 这是一个包装$http的服务的unit testing,服务非常简单,它只是防止重复调用服务器,同时确保尝试执行调用的代码仍然获得所需的数据。 angular.module('services') .factory('httpService', ['$http', function($http) { var pendingCalls = {}; var createKey = function(url, data, method) { return method + url + JSON.stringify(data); }; var send = function(url, data, method) { var key = createKey(url, data, method); if (pendingCalls[key]) { return pendingCalls[key]; } var promise = $http({ method: method, url: url, data: data […]