2016-12-05 25 views
1

我有一個服務處理數據並返回值,我有一個按鈕,它已註冊到我的範圍。如何註冊按鈕單擊以調用返回結果的服務函數?

有沒有辦法註冊按鈕直接調用服務功能並收集結果?

// html 
<button ng-click="submit()"></button> 

// controller 
$scope.submit = MyService.submit(data); // How do I get the returned values? 

// service 
var returnValue = "SomeValue"; 
return returnValue; 

解決方案:

// controller 
$scope.submit = function() 
{ 
    var results = MyService.submit(data); 
} 
+0

號這就是爲什麼我們有控制器。 – madhairsilence

+0

我剛剛意識到我可以提交一個函數,並在那裏調用服務。杜時刻。 – Instinct

+0

你的意思是一個簡單的JavaScript函數?打破Angular的目的 – madhairsilence

回答

-1
$scope.submit = MyService.submit(function(data){ 
    var returnValue =data; 
}); // How do I get the returned values? 

GET MyServise作爲一個承諾

0

this plunker。

HTML

<button ng-click="getResults();">Get Results</button> 

JS

(function(angular) { 
    angular. 
    module('myServiceModule', []). 
    controller('MyController', ['$scope', 'result', function($scope, result) { 
    $scope.getResults = function() { 
     alert(result); 
    }; 
    }]). 
    factory('result', function() { 
    var returnValue = "SomeValue"; 
    return returnValue; 
    }); 
})(window.angular); 
相關問題