在same-controlled中的变量中获取$scope.data的值



我的代码是

        $scope.data = {};
        var init = function () {
            $http.post('views/Report.aspx/GetMailReport', {})
            .success(function (data, status, headers, config) {
                $scope.data = JSON.parse(data.d);
            })
            .error(function (data, status, headers, config) {
                $scope.data = status;
            })
        };
        init();
        var data = $scope.data;

但是var数据返回空{}

如果您想要一个副本,您应该按照以下操作。。。由于http调用是异步的,您可以在成功回调方法内部进行分配

$scope.data = {}; 
var data;
var init = function () {           
  $http.post('views/Report.aspx/GetMailReport', {}) .success(function (data, status, headers, config) {
  $scope.data = JSON.parse(data.d); 
data = $scope.data;
}) .error(function (data, status, headers, config) { 
  $scope.data = status; 
}) }; 
init(); 

编辑时间:这是我创建的小提琴链接。

最新更新