当控件加载时,如何在AngularJS中加载数据?

当控件加载时,如何在AngularJS中加载数据?,angularjs,mongodb,asp.net-mvc-4,Angularjs,Mongodb,Asp.net Mvc 4,我有一个AngularJS控制器;在第一次加载时,数据不是从数据库中提取的 app.controller(“ProductPopupController”,函数($scope、$http、$mdDialog、$filter){ log(“ProductPopupController”); var-allGroups=[]; $http.get('UserDetail/GetAllUsers').success(函数(响应){ log(“我得到了我请求的数据”); //控制台日志(响应); 对于

我有一个AngularJS控制器;在第一次加载时,数据不是从数据库中提取的

app.controller(“ProductPopupController”,函数($scope、$http、$mdDialog、$filter){
log(“ProductPopupController”);
var-allGroups=[];
$http.get('UserDetail/GetAllUsers').success(函数(响应){
log(“我得到了我请求的数据”);
//控制台日志(响应);
对于(变量i=0;iconsole.log(所有组);
请注意
$http.get('UserDetail/GetAllUsers'))
是一个异步调用。在收到请求的响应之前,您打印出变量
所有组
。如果在
success
函数末尾添加
控制台.log
,您将看到数据已设置。

请注意
$http.get('UserDetail/GetAllUsers'))
是一个异步调用。在收到请求的响应之前,打印出变量
所有组
。如果在
成功
函数末尾添加
控制台.log
,您将看到数据已设置。

发生这种情况是因为
$http.get()
是异步的。您正在调用
$http.get()
,然后在检索结果之前立即调用
控制台.log(所有组)


一旦检索到数据并触发
.success()
命令,Angular将触发摘要循环,导致数据更新并被推入数组。但是,这种情况在控制器完成后很久才会发生,因此数据永远不会在
控制台.log()中打印。这是因为
$http.get()
是异步的。您正在调用
$http.get()
,然后在检索结果之前立即调用
控制台.log(所有组)


一旦检索到数据并触发
.success()
,Angular将触发一个摘要循环,导致数据更新并被推入阵列。但是,这种情况发生在控制器完成后很久,因此数据永远不会在
控制台.log()中打印。这是我加载md芯片的完整代码(角材料)使用md qutocomplete

app.controller(“ProductPopupController”,函数($scope、$http、$mdDialog、$filter){
log(“ProductPopupController”);
var-allGroups=[];
$http.get('UserDetail/GetAllUsers').success(函数(响应){
log(“我得到了我请求的数据”);
对于(变量i=0;i}
这是我使用md qutocomplete加载md芯片(角材料)的完整代码

app.controller(“ProductPopupController”,函数($scope、$http、$mdDialog、$filter){
log(“ProductPopupController”);
var-allGroups=[];
$http.get('UserDetail/GetAllUsers').success(函数(响应){
log(“我得到了我请求的数据”);
对于(变量i=0;i