在AngularJS中,在DOM完成渲染后运行指令

3

我有一个对象,需要从API获取数据,这可能需要一定的时间。我希望我的指令在获取到数据之前等待。


please add a code example - Jossef Harush Kadouri
1个回答

3
您可以阅读有关ngIf的内容。现在假设您的数据存储在$scope.data中。如果您有以下代码:
<div ng-if="data"></div>

只有在$scope.data存在时,此div才会被注入到DOM中,这意味着您可以使其在注入到DOM之前等待数据。


1
很好地使用了ng-if。我会在div内添加一个占位符,用于他的自定义指令。 - Jossef Harush Kadouri
好的,但我的数据来自不同的API调用,我不知道它们何时到达,以便我可以运行指令。 - yido
你可以根据不同的变量来设置ng-if,比如像这样:<div ng-if="dataLoaded"> 这样你就可以将API调用排队成一系列的promises,并在最后设置$scope.dataLoaded=true 如果你想了解更多关于promises以及如何排队的内容,你可以在这里阅读更多相关信息。 - Dan Moldovan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接