Angularjs ng中的ng src重复未更新
我对angularjs完全陌生,这里我尝试从ng repeat获取一个img id,并通过一个函数传递它,然后返回一个图像字符串,但它显示了一些错误。请帮忙 HTML 工厂Angularjs ng中的ng src重复未更新,angularjs,angularjs-ng-repeat,Angularjs,Angularjs Ng Repeat,我对angularjs完全陌生,这里我尝试从ng repeat获取一个img id,并通过一个函数传递它,然后返回一个图像字符串,但它显示了一些错误。请帮忙 HTML 工厂 getImgUrl:function(key){ return $http({ method:"GET", url:somedomain.com/getCoverPicture", //This domain will return a image
getImgUrl:function(key){
return $http({
method:"GET",
url:somedomain.com/getCoverPicture",
//This domain will return a image string.
params:{'key':key}
}).then(function(response){
return response.data;
})
}
getImgUrl函数不返回图像的URL。它返回HTTP响应的承诺,其主体包含(希望)URL
ng src
需要URL
此外,getImageUrl(key)
在eash摘要周期中通过Angular进行计算,您确实不希望每次摘要周期运行时都进行HTTP查询
因此,您需要预先获取图像URL(当控制器实例化时,或者当您获取属性列表时),并将其存储在对象中。假设您的listOfProperties是一个数组(应该是数组),而不是一个对象:
listOfProperties.forEach(function(property) {
factory.getImgUrl(property.key).then(function(response) {
property.imgUrl = response.data;
});
});
在你看来:
<tr data-ng-repeat="property in listOfProperties">
<td><img ng-src="{{property.imgUrl}}" /></td>
</tr>
请阅读angular Promissions,因为您似乎错过了一些关于它们的重要内容。您的getImgUrl函数不会返回图像的URL。它返回HTTP响应的承诺,其主体包含(希望)URL
ng src
需要URL
此外,getImageUrl(key)
在eash摘要周期中通过Angular进行计算,您确实不希望每次摘要周期运行时都进行HTTP查询
因此,您需要预先获取图像URL(当控制器实例化时,或者当您获取属性列表时),并将其存储在对象中。假设您的listOfProperties是一个数组(应该是数组),而不是一个对象:
listOfProperties.forEach(function(property) {
factory.getImgUrl(property.key).then(function(response) {
property.imgUrl = response.data;
});
});
在你看来:
<tr data-ng-repeat="property in listOfProperties">
<td><img ng-src="{{property.imgUrl}}" /></td>
</tr>
请阅读一些有角度的承诺,因为你似乎错过了一些重要的东西。试试这个
<tr ng-init="getImageUrl(key);" data-ng-repeat="(key, list) in listOfProperties">
<img ng-src="{{list.url}}">
</tr>
试试这个
<tr ng-init="getImageUrl(key);" data-ng-repeat="(key, list) in listOfProperties">
<img ng-src="{{list.url}}">
</tr>
你可以在下面添加错误吗这是我得到的角度。min.js:118错误:[$rootScope:infdig]你可以在下面添加错误吗这是我得到的角度。min.js:118错误:[$rootScope:infdig]