AngularJS和Cordova-检测设备就绪

时间:2014-05-26 12:54:51

标签: javascript angularjs

我一直在使用AngularJS处理应用。现在,我已准备好接受我的应用并将其与Cordova捆绑在一起。我的问题是,我不确定如何处理ondeviceready事件。目前,我的应用程序设置如下:

的index.html

<!DOCTYPE html>
<html>
<head>
  <script type="text/javascript" src="/app/app.js"></script>
</head>

<body>
  ...
  <script type="text/javascript">
    if (window.location.protocol === "file:") {
      document.addEventListener('deviceready', initializeApp(), false);
    } else {
      initializeApp();
    }
  </script>
</body>
</html>

app.js

function initializeApp() {
  var myApp = angular.module('myApp', ['ngRoute']);
  myApp.config(function() {
    ...
  });

  myApp.run(function() {
    ...
  });
}

我把初始化放在一个名为initializeApp的函数中,所以我可以重用它。但是,当我尝试运行此操作时,我收到的错误是......

Uncaught ReferenceError: initializeApp is not defined 

我做错了什么?

1 个答案:

答案 0 :(得分:0)

我不确定您的确切问题是什么,但我知道以下代码不正确

更改

document.addEventListener('deviceready', initializeApp(), false);

document.addEventListener('deviceready', initializeApp, false);

通过第一种方式,您可以立即尝试执行该功能。