Angular如何在GET操作之前制作PUT(文件下载)?

时间:2013-12-02 13:00:01

标签: angularjs

我通过get获得了很好的工作文件下载

<a ng-href="path/to/get/pdf/including/{{ angularVariables }}" >Export to PDF</a>

但是目前我需要在执行get之前进行更新操作,这样做的最佳方法是什么?

我已经尝试添加ng-click操作,其中我发出了put请求,但我无法弄清楚如何等待get action直到put返回。理想情况下会是这样的:

// template 
<a ng-href="path/to/get/pdf/including/{{ angularVariables }}" ng-click="updatePDF()" >Export to PDF</a>

// controller
$scope.updatePDF = function () {
  stop_click
  myService.update(params, function(resp) {
    continue_click
  });
}

这甚至可能吗?如果没有,如何解决这个问题?谢谢你的帮助。

1 个答案:

答案 0 :(得分:0)

您可以使用$location.path并在服务调用的成功方法中设置路径。

尝试类似

的内容
// template 
<a ng-href="#" ng-click="updatePDF()" >Export to PDF</a>

// controller
$scope.updatePDF = function () {
  myService.update(params, function(resp) {
    $location.path('YourPath')
  });
}

请参阅$location