Пробный код here & here. Поскольку Plunker не поддерживает IE8 или IE9 очень хорошо, код примера можно запустить, открыв пример Plunker в современном веб-браузере, а затем запустив панель «Запуск» в отдельном окне и открыв этот URL в IE8 или IE9.AngularJS 1.2.7 Ошибка ресурса IE8
При выполнении вызова с использованием RESTful $ resource.query или $ resource.get, обещание не возвращает никаких результатов на IE8 или IE9, если настраиваемое действие определяется и используется:
factory('ResourceService2', ['$resource', '$q', function($resource, $q) {
var factory = {
query: function() {
var deferred = $q.defer();
$resource('data.json', {'cacheSlayer' : new Date().getTime()}, {
'query': {
method: 'GET',
responseType: 'json',
isArray: true
}}).query(function (data) {
deferred.resolve(data);
});
return deferred.promise;
}
};
return factory;
}]).
запрос() :
ResourceService2.query().then(function (response) {
$scope.resource2Rows = response;
});
Однако этот же вызов успешно возвращает результаты, когда пользовательское действие не определен или использованы:
factory('ResourceService', ['$resource', '$q', function($resource, $q) {
var factory = {
query: function() {
var deferred = $q.defer();
$resource('data.json', {
'cacheSlayer' : new Date().getTime()
}, {}).query(function (data) {
deferred.resolve(data);
});
return deferred.promise;
}
};
return factory;
}]).
запрос():
ResourceService.query().then(function (response) {
$scope.resourceRows = response;
});
Использование $ HTTP также успешно:
factory('HttpService', ['$http', '$q', function($http, $q) {
var factory = {
query: function() {
var deferred = $q.defer();
$http.get('data.json', {
params: {
'cacheSlayer' : new Date().getTime()
}}).success(function (data) {
deferred.resolve(data);
});
return deferred.promise;
}
};
return factory;
}]).
прибудет():
HttpService.query().then(function (response) {
$scope.httpRows = response;
});
Является ли это ошибка в IE8/IE9? Какие дополнительные параметры для пользовательского действия должны быть определены для совместимости с IE8/IE9? Руководство Angular Developer's Guide не упоминает об этой проблеме с 1.2.7.
Спасибо за указание мне в правильном направлении, о том, как проверить plunks с помощью IE9! –