在HTTP请求的所有文档和教程中,我发现recomanded用法类似于:
var ax = {
getCaseData: function() {
api.cases.getCase(caseManager.data.id).then(function(res){
// puting my response to $scope.something
$scope.something = res.data;
});
},
}
我真的不喜欢高级,所以请告诉我,如果我错了,但我很多时候你不需要在范围内存储这样的东西,例如你想要只解决一次承诺并显示数据(你没有做任何其他的事情)
所以我在想是否有选择作出承诺:
var ax = {
getCaseData: function() {
return api.cases.getCase(caseManager.data.id);
},
}
并在此电话之后暂时改为:
<li ng-repeat="ax.getCaseData()"></li>
答案 0 :(得分:1)
这是在旧版AngularJS(&lt; 1.2)中自动处理的,但从那时起被删除了。 有些帖子声明可以通过在“.config”函数中添加此行来手动重新启用该功能:
$parseProvider.unwrapPromises(true);
但不建议将其作为解决方案。你目前正在以正确的方式做到这一点。 如果您有这样的大量案例,您可以创建自己的“承诺包装”功能,并在模板中使用它。