Я делаю свое первое приложение для Ionic. Часть его использует обещания.Ионное приложение после развертывания дает ReferenceError: Promise не задано
Приведенный ниже пример иллюстрирует проблему. (В представлении у меня есть кнопка, которая запускает $ scope.test, который выполняет функцию testProm()).
angular.module('myApp.controllers', [])
.controller('DashCtrl', function($scope, $state) {
$scope.test = function() {
testProm();
}
});
function testProm() {
console.log('1. Function testProm starting...');
return new Promise(function(resolve, reject) {
console.log('2. Hi from Promise');
var something = ' Some text ';
resolve(something);
}).then(function(something) {
console.log('3. Hi again. Something is: ' + something);
});
}
Все работает отлично в браузерах (Firefox, Chrome) и используется на планшете Sony Xpreria с Android 5.1.1.
Проблема начинается, когда я устанавливаю на дешевый планшет Woxter QX103 с Android 4.4.2. В этом случае, когда я пытаюсь запустить свою функцию она дает мне следующее сообщение об ошибке в консоли:
ReferenceError: Promise is not defined
at testProm (file:///android_asset/www/js/controllers.js:825:14)
at Scope.$scope.test (file:///android_asset/www/js/controllers.js:29:5)
at fn (eval at <anonymous> (file:///android_asset/www/lib/ionic/js/ionic.bundle.js:26457:15), <anonymous>:4:203)
at file:///android_asset/www/lib/ionic/js/ionic.bundle.js:62386:9
at Scope.$eval (file:///android_asset/www/lib/ionic/js/ionic.bundle.js:29158:28)
at Scope.$apply (file:///android_asset/www/lib/ionic/js/ionic.bundle.js:29257:23)
at HTMLButtonElement.<anonymous> (file:///android_asset/www/lib/ionic/js/ionic.bundle.js:62385:13)
at HTMLButtonElement.eventHandler (file:///android_asset/www/lib/ionic/js/ionic.bundle.js:16583:21)
at triggerMouseEvent (file:///android_asset/www/lib/ionic/js/ionic.bundle.js:2948:7)
at tapClick (file:///android_asset/www/lib/ionic/js/ionic.bundle.js:2937:3)
Что странно я использую CouchDB также с помощью обещаний, и она работает просто отлично. Что я делаю неправильно? Это мой самый первый javascript, и я довольно неопытный.