我在Angular服务中有以下功能:
this.getTasks = function() {
return $http.post(endpoint, params)
.then(function (response) {
console.log(response.data);
return response.data;
});
};
然后我尝试通过首先执行服务函数将返回值绑定到控制器中的变量,并使用.then()将其分配给变量:
vm.getTasks = function() {
LocationGraphService.getTasks()
.then(function (response.data) {
vm.tasks = response.data;
});
}
这不起作用。我知道服务功能作为console.log显示我正在拉动的数据。我需要帮助调用控制器中的函数并将其分配给变量。 $ q在这里是否合适?
答案 0 :(得分:3)
由于您的服务将响应对象规范化为原始data
的{{1}}属性,因此您不需要再次在控制器中执行此操作。正确的控制器逻辑将是:
response