Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/24.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显示加载动画,直到DOM就绪_Javascript_Angularjs_Cordova_Angularjs Ng Repeat - Fatal编程技术网

Javascript Angular.js显示加载动画,直到DOM就绪

Javascript Angular.js显示加载动画,直到DOM就绪,javascript,angularjs,cordova,angularjs-ng-repeat,Javascript,Angularjs,Cordova,Angularjs Ng Repeat,我正在用Angular.js构建一个Phonegap应用程序。在索引页面中,您可以单击“显示用户列表”按钮,该按钮可将您重定向到在ng视图中加载模板的页面。模板包含从$rootScope.users加载并使用ng repeat呈现的用户列表。问题是有很多用户(目前大约120个),因此页面呈现速度很慢,尤其是在Phonegap中。因此,当我单击“显示用户列表”按钮时,地址栏中的URL会立即更改,但是ng view中的内容只会在几秒钟后更改。因此,我希望在渲染视图之前显示加载动画,以便用户知道页面正

我正在用Angular.js构建一个Phonegap应用程序。在索引页面中,您可以单击“显示用户列表”按钮,该按钮可将您重定向到在
ng视图中加载模板的页面。模板包含从
$rootScope.users
加载并使用
ng repeat
呈现的用户列表。问题是有很多用户(目前大约120个),因此页面呈现速度很慢,尤其是在Phonegap中。因此,当我单击“显示用户列表”按钮时,地址栏中的URL会立即更改,但是
ng view
中的内容只会在几秒钟后更改。因此,我希望在渲染视图之前显示加载动画,以便用户知道页面正在加载

我用
ng show=“load.visible”
创建了一个加载动画-一个div。在按钮上,我设置了
ng click=“load.visible=true”
,在“用户”页面的控制器中,我写道:

angular.element(document).ready(function(){
            $scope.loading.visible = false;
        })
第一次按下按钮时效果很好。动画立即显示,并在显示用户列表时消失。但是当我返回到索引页面,再次按下“显示用户列表”按钮时,加载的动画直到用户列表被渲染后才显示,然后显示大约100毫秒并消失


我是Angular的新手,所以我不确定它是如何工作的,有人能告诉我出了什么问题吗?有没有更好的解决方案来处理这个问题?谢谢

请尝试在页面控制器中使用以下命令

$scope.$on('$viewContentLoaded', function () 
{
     $scope.loading.visible = false;
});
而不是

angular.element(document).ready(function(){});
也可以在angular文档中查找ng斗篷

希望这有帮助


谢谢

。使用自定义CSS加载微调器/启动屏幕。这很可能不起作用,因为在DOM交付给用户时,JS还没有完全加载到页面上?我已经有这个指令了