[英]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.