0

я пытаюсь использовать $ ionicPopup в моей службе .Actually, когда я использую в контроллере запустить его правильно .please нажмите на кнопку и проверить здесь plunker http://plnkr.co/edit/wIss45ijr0DfvUVB1GPG?p=previewпочему предупреждение не отображается при использовании сервиса?

Но когда я на заводе дает ошибку. Проверьте консоль.

Ошибка: Максимальный размер стека вызовов превысил

http://plnkr.co/edit/l3rvPB7AZV1WIRbMEnXd?p=preview

ap.factory('utlity', ['$ionicPopup',function($ionicPopup) { 
    function showOtcresult(message){ 
     var alertPopup = $ionicPopup.alert({ 
      title: 'Alert', 
      template: message.toString() 
     }); 
     alertPopup.then(function(res) { 
      console.log('Thank you for not eating my delicious ice cream cone'); 
     }); 
    } 
    return { 
     showOtcAlert:function showOtcresult(message){ 
      showOtcresult(message) 
     } 
    } 
}]); 

ответ

0

Проблемы здесь до одноименного названия для двух функций, вызвавших вызов цикла

showOtcresult

return { 
    showOtcAlert: function whateverNameForDebug(message) { 
    showOtcresult(message) 
    } 
} 
3

Там нет необходимости имя в объявлении функции, так как она будет выполняться путем вызова свойства ключ showOtcAlert, так что вы нужно сделать:

return { 
     showOtcAlert:function (message){ 
      showOtcresult(message) 
     } 
    } 

Plunker

+0

Существует хорошая потребность имя функции, если вы хотите, чтобы выйти из ада анонимной функции времени отладка – maurycy

Смежные вопросы