From 20f11044b0651b46ef9da079beab733b0c006933 Mon Sep 17 00:00:00 2001 From: vilicvane Date: Thu, 31 Dec 2015 00:52:26 +0800 Subject: [PATCH] use extendable-error package --- package.json | 1 + src/api-error.ts | 10 ++++------ 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/package.json b/package.json index e9aef85..25aff95 100644 --- a/package.json +++ b/package.json @@ -28,6 +28,7 @@ "dependencies": { "chalk": "^1.1.1", "express": "^4.13.3", + "extendable-error": "^0.1.1", "glob": "^6.0.1", "hyphenate": "^0.2.1", "thenfail": "^0.3.17" diff --git a/src/api-error.ts b/src/api-error.ts index a2b1fce..a4bd626 100644 --- a/src/api-error.ts +++ b/src/api-error.ts @@ -1,17 +1,15 @@ +import ExtendableError from 'extendable-error'; + /** * APIError class. */ -export class APIError extends Error { - name = (this.constructor as any).name; - stack: string; - +export class APIError extends ExtendableError { constructor( public code: number, - public message = APIErrorMessages[code] || APIErrorMessages[APIErrorCode.unknown], + message = APIErrorMessages[code] || APIErrorMessages[APIErrorCode.unknown], public status = APIError.defaultStatus ) { super(message); - this.stack = (new Error() as any).stack.replace(/\s+at new APIError .+/, ''); } static defaultStatus = 500;