0

我正在编写一个单页 appgyver js 应用程序。当应用程序加载(ondeviceready)时,它会检查用户是否通过 js 登录,如果是,它会触发 js 方法(方法 1)。js 方法做了几件事,最后是更新导航栏标题。

我遇到了一个问题,即 application.js 中的样板代码

angular.module('SteroidsApplication', [
  'supersonic'
])
.controller('IndexController', function($scope, supersonic) {

  $scope.navbarTitle = "AppName";

});

似乎在方法 1 运行后运行,尽管在 html 文件的头部被调用。方法 1 在 index.html 的正文中。

方法 1 确实运行,并且调用了 supersonic.ui.navigationBar.update 方法的成功处理程序。如果我在初始启动后运行方法 1,则导航栏更新按预期工作。

有谁知道为什么样板方法在方法 1 之后运行,以及如何解决这个问题?

编辑 1

如果我注释掉

  $scope.navbarTitle = "AppName";

出现同样的问题。

编辑 2

这绝对是时间问题。如果我将方法 1 延迟 3 秒(使用 setTimeout),问题就会消失。这并不能解决问题,但它确实证实了我最初的怀疑。

4

0 回答 0