mirror of
https://github.com/NativeScript/NativeScript.git
synced 2025-11-05 13:26:48 +08:00
Properly extend Error instead of implementing it, update the Error message and stack to appear in the console and error activity
This commit is contained in:
committed by
Vladimir Enchev
parent
bc3910f9c8
commit
89ee3dc717
22
tns-core-modules/utils/debug.android.ts
Normal file
22
tns-core-modules/utils/debug.android.ts
Normal file
@@ -0,0 +1,22 @@
|
||||
import { Source } from "./debug-common";
|
||||
export * from "./debug-common";
|
||||
|
||||
export class ScopeError extends Error {
|
||||
constructor(inner: Error, message?: string) {
|
||||
let formattedMessage;
|
||||
if (message && inner.message) {
|
||||
formattedMessage = message + "\n > " + inner.message.replace("\n", "\n ");
|
||||
} else {
|
||||
formattedMessage = message || inner.message || undefined;
|
||||
}
|
||||
super(formattedMessage);
|
||||
this.stack = "Error: " + this.message + "\n" + inner.stack.substr(inner.stack.indexOf("\n") + 1);
|
||||
this.message = formattedMessage;
|
||||
}
|
||||
}
|
||||
|
||||
export class SourceError extends ScopeError {
|
||||
constructor(child: Error, source: Source, message?: string) {
|
||||
super(child, message ? message + " @" + source + "" : source + "");
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user