Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 如何使用新值I'更新$scope变量值;我从数据库里得到了什么?_Angularjs_Angularjs Scope - Fatal编程技术网

Angularjs 如何使用新值I'更新$scope变量值;我从数据库里得到了什么?

Angularjs 如何使用新值I'更新$scope变量值;我从数据库里得到了什么?,angularjs,angularjs-scope,Angularjs,Angularjs Scope,我每次点击按钮将web服务设置为$scope变量时,都会设置响应值,但是$scope变量不会用新值更新,我必须点击按钮两次,以更新$scope变量。我还检查过,每次按下按钮,web服务都会被正确调用 controller.js $scope.getDetails = function() { services.getSomeDetails($scope.id).then(function(response) { $scope.details= response.da

我每次点击按钮将
web服务
设置为
$scope
变量时,都会设置响应值,但是
$scope
变量不会用新值更新,我必须点击按钮两次,以更新
$scope
变量。我还检查过,每次按下按钮,
web服务
都会被正确调用

controller.js

$scope.getDetails = function() {
  services.getSomeDetails($scope.id).then(function(response) {

            $scope.details= response.data;

  }
}
view.html

 <a ng-click="getDetails();">Click me!</a>
点击我!
在scope变量之后使用
$scope.$apply()

  services.getSomeDetails($scope.id).then(function(response) {

        $scope.details= response.data;

        $scope.$apply();

   }
在scope变量之后使用
$scope.$apply()

  services.getSomeDetails($scope.id).then(function(response) {

        $scope.details= response.data;

        $scope.$apply();

   }

如果您使用的是jquery click事件,它将不会触发角度的摘要圆。使用指令或在更新范围变量后添加
$scope.$digest()
$scope.$apply()

services.getSomeDetails($scope.id).then(function(response) {

            $scope.details= response.data;
            $scope.$apply()

  }

如果您使用的是jquery click事件,它将不会触发角度的摘要圆。使用指令或在更新范围变量后添加
$scope.$digest()
$scope.$apply()

services.getSomeDetails($scope.id).then(function(response) {

            $scope.details= response.data;
            $scope.$apply()

  }

您应该在问题中添加代码!好的,我同意了,谢谢。你应该在问题中添加代码!好的,我准备好了,谢谢。