如何使用angularJS从REST API加载图像列表

时间:2013-09-03 09:05:35

标签: image rest angularjs

我在这个论坛上搜索过一点安静,这是我的问题 -

我的html中有一个ng-repeat,它包含一个消息列表(Json对象)。 每条消息JSON都有一个发件人电子邮件地址 - 例如abc@gmail.com

现在,我必须从邮件中获取电子邮件地址,并形成另一个REST API请求以获取其图像,例如 - http://<>:8080 /getImage/abc@gmail.com(电子邮件地址动态)

所以在我的代码中,我将有一个ng-repeat和一个指向图像REST URL的ng-src 如果服务器中没有图像,则返回404并在UI上显示损坏的图像。我该如何处理?另一方面,如果我发出一个http请求以确定是否有成功消息,并且在失败时返回一个默认图像,那么整个事情就会经历一个无限循环。我会尝试创建一个小提琴并将其包含在内以便更好地解释。

1 个答案:

答案 0 :(得分:0)

使用错误块来处理此类行为:

 function($http) {
                var restUrl = 'getImage/abc';

                return {

    fetchImage: function(imageId) {
                        var self = this;
                        return  $http.get(restUrl + '/' + imageId).
                            success(function(data) {
                                return self.imageUrl = data;
                            }).
                            error(function(data) {
                                return self.imageUrl = "pathToDefaultImage";
                            });
                    },

    ...