Подтвердить что ты не робот

Невозможно прочитать свойство getPicture из undefined - ионной камеры

этот код возвращает:

 Cannot read property 'getPicture' of undefined

Не знаю, что я делаю неправильно, не могли бы вы помочь мне с кодом?

Мое приложение:

angular.module('Todo', ['ionic', 'Todo.controllers', 'ngStorage', ' 'Todo.services', 'ngCordova'])

my Controller:

.controller('profileEditCtrl', function($scope,Camera, $localStorage,
 $cordovaCamera) 
     {  
        $scope.$storage = $localStorage.$default({ data:[]});

    $scope.takePicture = function() 
    {
        navigator.camera.getPicture(onSuccess, onFail, { quality: 50,
            destinationType: Camera.DestinationType.DATA_URL }); 

      function onSuccess(imageData) {
        var image = document.getElementById('myImage');
        image.src ="data:image/jpeg;base64," + imageData;       
    }

    function onFail(message) {
        alert('Failed because: ' + message);
    }       

}});
4b9b3361

Ответ 1

  • Ваш код верен, просто добавьте кнопку html с ng-click="takePicture()".

  • Здесь нет проблем, уверен, что браузер "cannot read property 'getPicture' of undefined", потому что он не имеет конфигурации для мобильной камеры, которую вы определили, что означает , вы должны проверить свою заявку на реальное устройство, используя:

    > ionic run android.

  • Обратите внимание, что новое обновление Google Chrome имеет новую функцию, которая помогает протестировать ваше устройство в браузере, если оно подключено к ПК/ноутбук, для тестирования перейдите на панель навигации хром → Дополнительные инструменты → Осмотр устройств или просто перейдите по этой ссылке:

    хром://инспектировать/# устройства

  • Я уверен, что ваша камера будет нормально функционировать, если в приложении установлен плагин cordova plugin add org.apache.cordova.camera,
    Я надеюсь, это поможет вам.