Spaces:
Paused
Paused
| import _ from 'lodash'; | |
| export interface BodyOptions { | |
| code?: number; | |
| message?: string; | |
| data?: any; | |
| statusCode?: number; | |
| } | |
| export default class Body { | |
| /** 状态码 */ | |
| code: number; | |
| /** 状态消息 */ | |
| message: string; | |
| /** 载荷 */ | |
| data: any; | |
| /** HTTP状态码 */ | |
| statusCode: number; | |
| constructor(options: BodyOptions = {}) { | |
| const { code, message, data, statusCode } = options; | |
| this.code = Number(_.defaultTo(code, 0)); | |
| this.message = _.defaultTo(message, 'OK'); | |
| this.data = _.defaultTo(data, null); | |
| this.statusCode = Number(_.defaultTo(statusCode, 200)); | |
| } | |
| toObject() { | |
| return { | |
| code: this.code, | |
| message: this.message, | |
| data: this.data | |
| }; | |
| } | |
| static isInstance(value) { | |
| return value instanceof Body; | |
| } | |
| } |