Javascript AngularJs/ngCordova自定义内置离子注入模块错误
今天我走到了精神错乱的边缘 我的目标只是包含一个插件ngCordova(在这个例子中:cordova插件设备)。还有一点工作 我的出发点是一个项目,仅此而已 根据我收到的建议,我首先访问了ngCordova网站,并构建了一个自定义的ng cordova.js,其中只包含我需要的内容(通过设备) 我集成到您的项目位置:/www/lib/ngCordova/dist/ng-cordova.js 我将index.html更改如下:Javascript AngularJs/ngCordova自定义内置离子注入模块错误,javascript,angularjs,cordova,ionic,ngcordova,Javascript,Angularjs,Cordova,Ionic,Ngcordova,今天我走到了精神错乱的边缘 我的目标只是包含一个插件ngCordova(在这个例子中:cordova插件设备)。还有一点工作 我的出发点是一个项目,仅此而已 根据我收到的建议,我首先访问了ngCordova网站,并构建了一个自定义的ng cordova.js,其中只包含我需要的内容(通过设备) 我集成到您的项目位置:/www/lib/ngCordova/dist/ng-cordova.js 我将index.html更改如下: ... <!-- ionic/angularjs js --&g
...
<!-- ionic/angularjs js -->
<script src="lib/ionic/js/ionic.bundle.js"></script>
<script src="lib/ngCordova/dist/ng-cordova.js"></script>
<!-- cordova script (this will be a 404 during development) -->
<script src="cordova.js"></script>
<!-- your app's js -->
<script src="js/app.js"></script>...
最后,我修改了控制器“DashCtrl”以集成插件:
.controller('DashCtrl', function($ionicPlatform, $scope, $cordovaDevice) {
$ionicPlatform.ready(function() {
$scope.$apply(function() {
// sometimes binding does not work! :/
// getting device infor from $cordovaDevice
var device = $cordovaDevice.getDevice();
$scope.manufacturer = device.manufacturer;
$scope.model = device.model;
$scope.platform = device.platform;
$scope.uuid = device.uuid;
});
});
})
我在我的浏览器(Ripple下)中得到了这个错误:
奇怪的是,即使不涉及代码中的任何内容,如果我执行以下操作:
bower install ngCordova --save
它下载了ngCordova的完整版本,在那里,一切都很完美
我真的不明白我的错误在哪里。我希望你们中间有人能帮助我理解
感谢您花了这么多时间阅读我的消息和回答我的问题(很抱歉我的英语不好)。这是构建系统中的一个错误 打开ngCordova.js文件并更改
angular.module('ngCordova.plugins', [
'device'
]);
到
您是否通过以下方式包含插件:
cordova plugin add cordova plugin device
您可以尝试使用完整的ng-cordova.js进行检查
此外,不从controller在$scope上写是一种很好的做法。
使用“controller as
”定义别名,并按如下方式注册变量:`
controller('DashCtrl', function($ionicPlatform, $scope, $cordovaDevice) {
var self = this;
$ionicPlatform.ready(function() {
// sometimes binding does not work! :/
// getting device infor from $cordovaDevice
var device = $cordovaDevice.getDevice();
self.manufacturer = device.manufacturer;
self.model = device.model;
self.platform = device.platform;
self.uuid = device.uuid;
});
})`
并将其与.myvarorfunction一起在html上使用
angular.module('ngCordova.plugins', [
'device'
]);
angular.module('ngCordova.plugins', [
'ngCordova.plugins.device'
]);
controller('DashCtrl', function($ionicPlatform, $scope, $cordovaDevice) {
var self = this;
$ionicPlatform.ready(function() {
// sometimes binding does not work! :/
// getting device infor from $cordovaDevice
var device = $cordovaDevice.getDevice();
self.manufacturer = device.manufacturer;
self.model = device.model;
self.platform = device.platform;
self.uuid = device.uuid;
});
})`