后端有个接口,请求/api/avatar/
这个网址时,返回一个图片的实际路径/static/images/uploads/default
,在浏览器中测试是完全OK的,如图:
但使用angular
的get
方法,代码如下:
var myapp = angular.module("myapp", []);
myapp.controller("MainCtrl", ["$http", function ($http) {
var self = this;
this.get_avatar = function () {
$http({
method: "GET",
url: "/api/avatar/"
}).then(function (value) {
console.log(value.data);
return value.data;
}, function (reason) {
console.log(reason);
})
};
}]);
在html
中使用<img ng-src="{{ctrl.get_avatar()}}">
去获取图片地址,此时一打开html
,前端疯狂向后端发送get
请求,如图:
浏览器console
中也不断地重复刷出错误,如图:
没写过ng, 你看一下这么处理对吗 ?
你写的那个是返回一个promise 而不是函数结果
var myapp = angular.module("myapp", []);
myapp.controller("imgControl", ["$http", function ($http) {
}]);
<div ng-controller="srcControl as src">
<img ng-src="{{src.src}}">
</div>