diff options
| author | Ken Sheedlo | 2013-08-13 15:30:52 -0700 |
|---|---|---|
| committer | Ken Sheedlo | 2013-08-15 13:23:18 -0700 |
| commit | 37123cd2858b4e318ed8109af745312df4848577 (patch) | |
| tree | 118abe5fd50e1c6fef4281972cf52c0162482fa8 /src | |
| parent | fe267e30b95e8f48ddc670b97d485f18fb64d39e (diff) | |
| download | angular.js-37123cd2858b4e318ed8109af745312df4848577.tar.bz2 | |
feat(minerr): log minerr doc url in development
Closes #3566
Diffstat (limited to 'src')
| -rw-r--r-- | src/minErr.js | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/src/minErr.js b/src/minErr.js index 89be9b1b..4ebcf722 100644 --- a/src/minErr.js +++ b/src/minErr.js @@ -30,10 +30,21 @@ function minErr(module) { return function () { - var prefix = '[' + (module ? module + ':' : '') + arguments[0] + '] ', + var code = arguments[0], + prefix = '[' + (module ? module + ':' : '') + code + '] ', template = arguments[1], templateArgs = arguments, - message; + stringify = function (obj) { + if (isFunction(obj)) { + return obj.toString().replace(/ \{[\s\S]*$/, ''); + } else if (isUndefined(obj)) { + return 'undefined'; + } else if (!isString(obj)) { + return JSON.stringify(obj); + } + return obj; + }, + message, i; message = prefix + template.replace(/\{\d+\}/g, function (match) { var index = +match.slice(1, -1), arg; @@ -52,6 +63,13 @@ function minErr(module) { return match; }); + message = message + '\nhttp://errors.angularjs.org/' + version.full + '/' + + (module ? module + '/' : '') + code; + for (i = 2; i < arguments.length; i++) { + message = message + (i == 2 ? '?' : '&') + 'p' + (i-2) + '=' + + encodeURIComponent(stringify(arguments[i])); + } + return new Error(message); }; } |
