0

我有一个基于cordova的插件,用于访问设备联系人。 我看到ng-cordova建议使用deviceready来初始化控制器中的插件。使用Angularjs注入服务或执行DeviceReady后的服务

我的问题是。是否有一种方法可以在完成设备准备工作后将服务注入到angular.module中,这样我就不必一直检查所有插件的deviceready。

回答

1

@Siddharth,
使用科尔多瓦/ PhoneGap的你*必须*等到deviceready火灾。要清楚你的问题,deviceready只会触发一次。

READ:Top Mistakes by Developers new to Cordova/Phonegap

我报价#4

(...)指向我们需要的section of documentation

这是每个Cordova应用程序应该使用的一个非常重要的事件。

Cordova由两个代码库组成:native和JavaScript。在加载本机代码时,显示自定义加载图像。但是,只有在DOM加载后才会加载JavaScript。这意味着您的Web应用程序可能会在加载之前调用Cordova JavaScript函数。

科尔多瓦deviceready事件一旦Cordova完全加载就会触发。设备启动后,您可以安全地拨打Cordova功能。

而且如果你认为这是次要的,即使像Raymond Camden这样的退伍军人都忘记了这一点。