我遇到的问题是Image Picker ngCordova插件在我的离子应用程序中工作。每次我在Android(在我的设备和模拟器中)调用函数getPictures()
时,应用程序都会崩溃。该功能在模拟器中的IOS上运行,但不在IOS设备上运行。我曾尝试卸载并重新安装该插件,甚至还制作了一个示例Hello World应用程序,以查看是否有来自我的原始项目的东西与其混淆。但是,这并没有奏效。
我不断收到这类型错误时,我调用该函数getPictures
:
[console.error] TypeError: Cannot read property 'getPictures' of undefined
这里是我的控制,我复制并从该网站粘贴:
.controller('ThisCtrl', ['$scope', '$cordovaImagePicker', function($scope, $cordovaImagePicker) {
$scope.getImages = function() {
var options = {
maximumImagesCount: 10,
width: 800,
height: 800,
quality: 80
};
$cordovaImagePicker.getPictures(options)
.then(function (results) {
for (var i = 0; i < results.length; i++) {
console.log('Image URI: ' + results[i]);
}
}, function(error) {
// error getting photos
});
}
}])
而且我安装的插件:
cordova-plugin-console 1.0.2 "Console"
cordova-plugin-device 1.1.1 "Device"
cordova-plugin-image-picker 1.0.8 "ImagePicker"
cordova-plugin-splashscreen 3.1.0 "Splashscreen"
cordova-plugin-statusbar 2.1.1 "StatusBar"
cordova-plugin-whitelist 1.2.1 "Whitelist"
ionic-plugin-keyboard 1.0.8 "Keyboard"
我确信我在我的index.html中有ngCordova
<script src="lib/ngCordova/dist/ng-cordova.js"></script>
<script src="cordova.js"></script>
怎么回事?
你能在app.js文件注入ngCordova ??? [ngCordova](http://ngcordova.com/docs/install/) –
我已将ngCordova注入到我的app.js文件中。 'angular.module('starter',['ionic','ngCordova'])'。 – Rarepuppers
我正在尝试重现此问题;我建议试着确保你的app.js和controllers.js看起来和这一样:https://github.com/Jewelbots/ble-demo-app/blob/master/app/scripts/app.js错误告诉我,无论出于何种原因,该插件未加载。如果你安装了多个版本的插件(Cordova讨厌这个),这可能会发生,如果你在尝试使用它之前不是'deviceReady',也会发生这种情况。正如我所说,我会试着重现这一点,并让你知道它是如何发生的。 –