当浏览器遇到脚本中的错误时,它们会向程序员显示错误以及错误的位置做相当不错的工作。
我正在使用QUnit测试框架,它似乎正在捕获一些浏览器错误,并用超级无信息的错误消息替换它们。
例如,目前我显然在第0行有一个脚本错误(根据QUnit),但是,由于我使用Browserify,我的第0行是完全自动生成的,我之前从未遇到过此行的问题:
(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){
这是QUnit给出的错误消息:
如果确实QUnit捕获了一些浏览器错误,并将其错误消息替换为超级无效的错误消息,那么,为什么会这样,我该如何阻止它呢?