Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/382.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
Javascript Angular js-异步调用$scope.users后不更新模式值_Javascript_Angularjs - Fatal编程技术网

Javascript Angular js-异步调用$scope.users后不更新模式值

Javascript Angular js-异步调用$scope.users后不更新模式值,javascript,angularjs,Javascript,Angularjs,如果要查看必须调用任何其他函数或在回调中传递任何值的值,则success函数是调用完成后的回调 像 如果要查看必须调用任何其他函数或在回调中传递任何值的值,则success函数是调用完成后的回调 像 发出Http请求后,立即执行console.log语句 您需要在成功回调中记录它/与它交互 $scope.users = []; $http.get("getjsondata").success(function (response) { $scope.users = response;

如果要查看必须调用任何其他函数或在回调中传递任何值的值,则success函数是调用完成后的回调


如果要查看必须调用任何其他函数或在回调中传递任何值的值,则success函数是调用完成后的回调


发出Http请求后,立即执行
console.log
语句

您需要在成功回调中记录它/与它交互

$scope.users = [];
$http.get("getjsondata").success(function (response) {
    $scope.users = response; 
    console.log($scope.users);  
});

另外,请尽量不要在控制器中使用
$scope
。请参阅发出Http请求后立即执行
console.log
语句

您需要在成功回调中记录它/与它交互

$scope.users = [];
$http.get("getjsondata").success(function (response) {
    $scope.users = response; 
    console.log($scope.users);  
});

另外,请尽量不要在控制器中使用
$scope
。请参见

您的日志消息是在成功承诺之外编写的,并且可能在您的作业之前执行。请尝试以下操作:

$http.get("getjsondata").success(function (response) {
    $scope.users = response; 
    console.log($scope.users);
});

不要忘记承诺是异步的,因此这意味着它们比console.log语句之后的任何内容都要晚执行。

您的日志消息是在成功承诺之外编写的,并且可能在分配之前执行。请尝试以下操作:

$http.get("getjsondata").success(function (response) {
    $scope.users = response; 
    console.log($scope.users);
});

不要忘记承诺是异步的,因此意味着它们比console.log语句后面的任何语句都要晚执行。

原因是
console.log($scope.users)$http.get().success()
之前调用code>

$http.get()
返回一个承诺

您可以这样调试:

$scope.users = [];


$http.get("getjsondata").success(function (response) {
    $scope.users = response;  
    console.log($scope.users); 
});

原因是
console.log($scope.users)$http.get().success()
之前调用code>

$http.get()
返回一个承诺

您可以这样调试:

$scope.users = [];


$http.get("getjsondata").success(function (response) {
    $scope.users = response;  
    console.log($scope.users); 
});

首先检查您是否从JSON中得到响应中的任何数据,如果您得到任何错误,请检查浏览器控制台。您还可以调试Angular代码,以检查response的值。您不能
控制台的可能重复项。在那里记录
,因为
response
仅在异步请求完成后才可用。首先检查您是否从JSON获得响应中的任何数据,如果需要,请检查浏览器控制台得到任何错误。您还可以调试角度代码,以检查响应的值。您不能
控制台的可能重复项。在那里记录
,因为
响应
仅在异步请求完成后可用。感谢您以简单的方式理解此问题。现在我了解了将首先执行的语句的实际处理过程,以及由于asynchrouns调用,它为什么没有实际打印值。感谢您以简单的方式使这个问题得到理解。现在我了解了将首先执行的语句的实际处理过程,以及由于asynchrouns调用,它为什么没有实际打印值。