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()
}
您应该在问题中添加代码!好的,我同意了,谢谢。你应该在问题中添加代码!好的,我准备好了,谢谢。