【发布时间】:2016-07-14 17:52:42
【问题描述】:
我有一个基于 Phonegap 构建的 AngularJS/Ionic 应用程序。我正在尝试将 ngCordova 与 cordova-plugin-ble-central 插件(ngCordova 中的 $cordovaBLE)一起使用。无论我尝试什么,$cordovaBLE 都是未定义的。该调用在一个服务中,该服务在一个按钮的事件处理程序中调用。
我的 index.html 包括
<script src="js/thirdparty/ionic.bundle.min.js"></script>
<script src="js/thirdparty/ng-cordova.js"></script>
<script src="cordova.js"></script>
我的应用注入是
angular.module('myapp', [
'ionic',
'ngCordova',
'myapp.controller',
'myapp.service'
]);
我的控制器定义是
angular.module('myapp.controller')
.controller('settingsCtrl', ['commServ', function (commServ) {
var controller = this;
// Bluetooth ------------
controller.scan = function () {
commServ.getDevices()
};
}])
而我的服务定义是(myapp.service 在别处定义)
angular.module('myapp.service')
.factory('commServ', [function ($cordovaBLE) {
// Get bluetooth devices
service.getDevices = function () {
console.log($cordovaBLE);
return { error: null, success: true, value: [{ name: "Steve's Device" }] };
};
}
控制台中的输出总是“未定义”。
【问题讨论】:
-
@StaffordWilliams - 不幸的是我已经看过那篇文章,但它没有帮助。我直接在设备上测试。
标签: javascript angularjs cordova ionic-framework ngcordova