如何在单个方法中全局处理JavaScript异常?

时间:2017-01-09 07:11:12

标签: javascript jquery

我尝试通过编写的常用方法控制整个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中的类似方法来通过单一方法处理完整的应用程序异常。

1 个答案:

答案 0 :(得分:0)

只是不要使用评论,应该是这样的

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