2016-12-01 81 views
0

與主體打開新的窗口,我有動態填充一個表,最後一列是這樣的函數的結果:AngularJS休息通話,其次是響應

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') 
    }); 
}; 

其餘+窗口打開完全按照預期工作。然而$ scope.link值總是相同的(並且總是表中最後一行的列)。現在我明白了爲什麼這樣 - 鏈接依次由每行設置。然而,我無法將一個值綁定到有問題的單元格 - 除非我使用$ scope.link $ scope.linkClicked的值始終未定義....

回答

0

找到了答案 - 類型顯而易見: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>' 
}