php页面不刷新_图片的src不更新,javascript – 在Angular中使用ng-src不更新图像

博客讨论了在AngularJS应用中遇到的图片加载问题。问题在于控制器中的`currentThumb`通过服务`ImageService`获取图片URL,但图片未能在视图中更新。解决方案是确保在控制器的解析块中预先调用`ImageService.getImage()`,以便在控制器和视图加载前获取并设置图片URL。示例代码展示了如何调整服务和控制器以实现这一目标。
摘要由CSDN通过智能技术生成

在我的控制器中,我称之为服务.此服务向

PHP文件发出请求,该文件为我提供了图像的URL.

原因是图像位于“Media Vault”内部,这意味着我需要生成一个像这样的散列URL才能查看它:

http://xxxx.vo.llnwd.net/o35/s/xxx/test/thumbs/slide1.jpg?e=1365006137\u0026amp;h=5852aeaf5beeeebff05a601801b61568

上面的网址已经过期,因此您不会看到该特定链接中的任何内容.

我的图片标签是这样的:

< img id =“thumbnail”class =“glow”ng-src =“{{currentThumb}}”width =“200”height =“150”/>

我的控制器中的currentThumb是:

$scope.currentThumb = ImageService.getImage({

'type' : 'thumb',

'index' : $scope.currentIndex + 1,

'location' : $scope.location

});

我的服务看起来像这样:

app.factory('ImageService', function($http)

{

var image = null;

return {

promise:null,

getImage: function($data)

{

this.promise = $http.post('resources/auth.php',$data, {timeout:20000}).success(function(response)

{

image = response;

log(response);

})

}

}

});

当前ImageService成功返回一个URL(至少它显示控制台中的url),并在控制台中单击日志结果时,图像加载正常.图像没有更新的原因是什么?

最佳答案 我不确定你需要如何调用它,但另一种可能更好的方法是在控制器的解析块中调用ImageService.getImage().这样它在控制器和视图之前全部加载.

的jsfiddle

视图

currentThumb

var app = angular.module('main',[]);

app.factory('ImageService', function($http)

{

image = null;

return {

getImage: function($data)

{

image = $http.post('http://dopserv1.dop.com/test/auth.php', $data, {timeout:20000})

return image

}

}

});

function ExampleController($scope, ImageService)

{

$scope.currentThumb = ImageService.getImage({

'type' : 'thumb',

'index' : 1,

'location' : 'http://digitalout.vo.llnwd.net/o35/s/mobilevforum/test/'

});

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值