【发布时间】:2016-04-22 17:52:57
【问题描述】:
我有一个函数checkLogin() 在服务中设置一个变量。这始终在app.run(...) 中运行。在 ng-init 调用的一个函数中,我想使用这个变量来调用我的后端。问题是之前调用了 ng-init,所以对我的后端的调用发送了一个undefined 变量。我应该怎么做才能确保总是首先调用checkLogin()?
【问题讨论】:
-
您可以使用
state/route的resolve属性,因为您可以检查checkLogin()方法。所以resolve 将在加载templateUrl和@987654332 之前进行该调用@。您可以参考this answer 了解更多信息 -
你应该使用承诺和回调来实现你想要的,而不是
ng-init。 docs.angularjs.org/api/ng/service/$q