1
我有一個最近的文章部分,我需要驗證圖像是否存在或不在服務器上。如何檢查圖像存在於服務器上或不是在角js?
我嘗試了一些教程,它驗證正確,但它不會返回任何值到我的ng-if指令。
這是我最近的一篇文章部分: -
<div ng-controller="RecentCtrl">
<div class="col-md-3" ng-repeat="items in data.data" data-ng-class="{'last': ($index+1)%4 == 0}" bh-bookmark="items" bh-redirect>
<div class="forHoverInner">
<span class="inner">
<span class="defaultThumbnail">
<span ng-if="test(app.getEncodedUrl(items.bookmark_preview_image))" style="background-image: url('{{app.getEncodedUrl(items.bookmark_preview_image)}}'); width: 272px; height: 272px; " class="thumb" variant="2"></span></span></span> </div>
</div></div>
這是我最近的一篇文章控制器: -
app.controller('RecentCtrl', function($scope, $http, $rootScope, RecentArticleFactory,$q) {
$scope.test = function(url) {
RecentArticleFactory.isImage(url).then(function(result) {
return result;
});
};
})
下面是最近aricle工廠代碼: -
app.factory("RecentArticleFactory", ["$http", "$q", function ($http, $q) {
return {
isImage: function(src) {
var deferred = $q.defer();
var image = new Image();
image.onerror = function() {
deferred.resolve(false);
};
image.onload = function() {
deferred.resolve(true);
};
image.src = src;
return deferred.promise;
},
}
})
但
NG-IF = 「測試(app.getEncodedUrl(items.bookmark_preview_image))」 不返回任何值
任何想法?
你能提供我任何例子嗎? –
@arunkamboj:我用一些額外的代碼更新了我的帖子。 – Darneas
它不適用於我的情況。 –