目前正在使用PhoneGap 3.5(在3.3中也出现问题)使用Ionic构建应用程序,用于前端界面。
在我的iPhone上运行时,应用程序有时可以正常工作,有时也不行。我无法弄清楚它什么时候会做到。当它失败时,Weinre得到消息:
5秒后,deviceready尚未解雇。
频道未被解雇:onCordovaReady
同样,它不一致。有时它会发射,有时它不会发射。我构建了一个临时版本的应用程序并将其交给另一个开发人员;对他而言,它始终未能解雇这一事件。
我甚至不确定如何调试问题。建议?
答案 0 :(得分:1)
你见过这个吗?
http://forum.ionicframework.com/t/when-are-the-angular-controllers-loaded/239
控制器加载时间和设备准备触发之间不一定存在连接。那个事件来自Cordova的内部,如果你把听众设置得太晚,那么这个事件已经被解雇了,你就会错过它。
为了解决这个问题,我们已经为您提供了平台服务 用于在设备准备就绪时(或之后)始终调用函数 它已被加载了):
controller('MyCtrl', function($scope, Platform) {
Platform.ready(function() {
// Platform stuff here.
});
});
后来的帖子说:
controller('MyCtrl', function($scope, $ionicPlatform) {
$ionicPlatform.ready(function() {
// Platform stuff here.
});
});
在角度框架内更有意义