2017-01-09 1 views
0

Я пытался контролировать все исключения приложений JavaScript с помощью обычного написанного метода, но не могу найти точного решения проблемы. Я попытался ниже кода, но иногда он не работалКак обрабатывать исключения JavaScript во всем мире в одном методе?

<script type="text/javascript"> 

      window.onerror = function() { 
       alert("An error occurred."); 
      } 

     </script> 

То же самое может быть достигнут в угловом с использованием ниже методы:

$provide.decorator('$exceptionHandler', function ($delegate) { 
     return function (exception, cause) { 
      $delegate(exception, cause); 
      var initInjector = angular.injector(['ng']); 
      var $http = initInjector.get('$http'); 

      $http({ 
       method: 'POST', 
       url: '/api/common/send_email', 
       data: {message: new Date() +': '+ exception.stack}, 
       headers: { 
        'Content-Type': 'application/json;charset=utf-8' 
       } 
      }).then(function successCallback(response) { 

       }, function errorCallback(response) { 

       }); 
     }; 
    }); 

Может кто-нибудь, пожалуйста, помогите мне с подобным методом в чистом JavaScript или Jquery для обработки полные исключения приложений с помощью одного метода.

+3

Возможный дубликат [Javascript глобальной обработки ошибок] (http://stackoverflow.com/questions/951791/javascript-global-error-handling) – djxak

+1

Можете ли вы привести пример ситуации, когда предоставленный код не работал и как бы вы ожидали его работы? –

ответ

0

просто не использовать комментарии, должны быть, как это

<script type="text/javascript"> 
    window.onerror = function myErrHandler(errorMsg, url, lineNumber) { 
     alert("Error: " + errorMsg); 
     return false; 
    } 
</script> 
+0

жаль, что я просто использовал то же самое, это просто ошибка опечатки ... –

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