error.js 638 B

12345678910111213141516171819202122
  1. /**
  2. * 响应错误对象
  3. */
  4. export class ResponseError extends Error {
  5. constructor(response) {
  6. var _a, _b;
  7. super((_a = response.errorMessage) !== null && _a !== void 0 ? _a : "请求失败");
  8. this.code = (_b = response.errorCode) !== null && _b !== void 0 ? _b : -1;
  9. this.response = response;
  10. }
  11. }
  12. /**
  13. * 判断错误对象是否为响应错误对象。 用于 catch 语句安全地获取 code 和 message
  14. * @param error
  15. * @returns
  16. */
  17. export function isResponseError(error) {
  18. return !!(error &&
  19. typeof error === "object" &&
  20. "code" in error &&
  21. "message" in error);
  22. }