必须在服务和$ http中使用angular.js $ apply

时间:2014-08-22 02:52:38

标签: angularjs

我定义了一个名为storeInstance的服务,但如果不使用apply,该服务将无效。使用$http时遇到了同样的问题。

1)我的服务必须使用apply,否则什么都不会发生:

 $scope.$apply(
     storeInstance.get({setName:treeNode.name}).$promise.then(
         function(resolve){
             $scope.store = resolve;

             $scope.set.setName = $scope.store.entitySetName;
        },
        function(reject){console.log("get store failed")}
     ));

2)$http必须使用apply,否则不会发生任何事情:

$scope.$apply(     
    $http({
        url:URL,
        method:"GET"
    }).success(function(data){
        $scope.spaceSchemaList = data;
    });
);

为什么会这样?有人知道吗?

0 个答案:

没有答案