[英]How do I setup an AngularJS app with onDeviceReady and initialize functions for Cordova?
我正在开发我的第一个 Cordova 应用程序以使用 AngularJS,但我对如何合并 Cordova 项目的起始 JS 有点迷茫。
我目前拥有 Cordova 中包含的默认 index.js 文件,我已将其修改为包含一些基于设备何时启动或脱机的事件。 它创建一个对象(应用程序)并添加用于初始化、bindEvents 和 onDeviceready 的函数。
我应该在哪里定义 AngularJS 应用程序? 在文档底部的 app.initialize() 函数调用之后? 或者我可以完全放弃 JS 文件的原始 Cordova 结构并为 onDeviceReady 做其他事情吗?
谢谢!
基本上你可以在任何地方定义角度,我推荐一个单独的文件。 您必须担心的是在cordova之前首先加载angular。 以下是如何使用服务克服此问题的示例。
.service('cordovaReady', function($q){
var cordovaDefer = $q.defer();
//Note: if you want browser support you'll need to detect
//what platform you're running because deviceready event won't be called
//unless cordova is running.
document.addEventListener("deviceready", cordovaDefer.resolve, false);
return function(){
return cordovaDefer.promise;
};
});
每次在应用程序中使用cordova插件时都使用它,如下所示:
//$cordovaFacebook is just an example
.controller('someCtrl', function(cordovaReady, $cordovaFacebook){
cordovaReady()
.then(function(){
//Plugins available here
$cordovaFacebook.api('/me').then(...);
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.