我遇到的問題是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',也會發生這種情況。正如我所說,我會試着重現這一點,並讓你知道它是如何發生的。 –