【问题标题】:AngularJS rest call, followed by opening new window with body of responseAngularJS 休息调用,然后打开带有响应正文的新窗口
【发布时间】:2016-12-02 23:41:55
【问题描述】:

我有一个动态填充的表格,最后一列是这样的函数的结果:

function actionsHtml(data) {
  $scope.link="/myRestTarget?restParam=" + data.value;
  return '<a target="_new" ng-href="{{link}}" ng-click="$event.preventDefault();linkClicked(link);">Explorer <i class="fa fa-binoculars"/></a>'
}

当用户点击一个列按钮时,会发起一个休息呼叫;创建一个文档;返回此文档的 ID;将 id 附加到 uri,然后在新窗口中打开它。

$scope.linkClicked = function(link){
  $http.get(link.toString()).then(function (result) {
    var newLink = 'http://newUrl:8080/' + result.data.body
    $window.open(newLink, '_blank')
  });
};

rest + window open 完全按照预期工作。但是 $scope.link 值始终相同(并且始终是表中最后一行的列)。现在我明白为什么会这样了——链接是由每一行依次设置的。但是我无法将值绑定到有问题的单元格 - 除非我使用 $scope.link,否则 $scope.linkClicked 的值始终是未定义的......

【问题讨论】:

    标签: angularjs angularjs-scope


    【解决方案1】:

    找到答案 - 真的很明显:S

    function actionsHtml(data) {
      var link="/myRestTarget?restParam=" + data.value;
      return '<a target="_new" href="' + link + '" ng-click="$event.preventDefault();linkClicked(link);">Explorer <i class="fa fa-binoculars"/></a>'
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-09-27
      • 1970-01-01
      • 2021-07-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多