我的应用需要在初始化时从外部源将一些数据加载到$rootScope
。由于数据来自外部源,因此无法保证加载数据所需的时间。我想推迟视图的渲染,直到成功加载数据。有没有办法实现这个目标?
请注意,我没有为此应用使用Angular路由。
答案 0 :(得分:14)
在不使用路由解析的情况下,在异步操作完成之前,没有一种干净的方法可以阻止视图呈现,但您可以编写自定义指令来执行相同的工作。
但是,如果这是严格的用户体验,那么使用ngShow可以游泳:
<div ng-show="user.name">
<!-- content won't be visible until data is set -->
</div>
这是一个更新的Plunker:http://plnkr.co/edit/MXoQNWHvyp9aOXg0QOoC?p=preview
答案 1 :(得分:0)
对我来说,这不仅仅是UI闪烁的问题。由于数据在呈现之前未加载,因此我的引导选择不是选择关联的数据值。我能够通过在包装下拉列表选项的容器中放置“ng-if”来解决问题,如下所示:
CMT
希望这可以帮助那些遇到类似问题的人(注意:我还将nya-bootstrap-select模块合并到我的项目中 - bower install nya-bootstrap-select)