@hzab/data-model 1.3.1 → 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +6 -1
- package/README.md +39 -36
- package/package.json +1 -1
- package/src/data-model.js +17 -4
package/CHANGELOG.md
CHANGED
|
@@ -1,4 +1,9 @@
|
|
|
1
|
-
# @hzab/data-model@1.
|
|
1
|
+
# @hzab/data-model@1.4.0
|
|
2
|
+
|
|
3
|
+
- 兼容分页列表是 content 及相关数据同层的问题 data: { content: [], pageNumber: 1, pageSize: 10, total: 0 }
|
|
4
|
+
- handleResponse 统一 response 回调,用于处理定制 response 格式
|
|
5
|
+
|
|
6
|
+
# @hzab/data-model@1.3.1
|
|
2
7
|
|
|
3
8
|
- fix: useStatusText: true 问题修复
|
|
4
9
|
|
package/README.md
CHANGED
|
@@ -47,6 +47,8 @@ const listDM = new DataModel({
|
|
|
47
47
|
deleteApi,
|
|
48
48
|
// 批量删除接口 delete url
|
|
49
49
|
multipleDeleteApi,
|
|
50
|
+
// 统一 response 回调,用于处理定制 response 格式
|
|
51
|
+
handleResponse,
|
|
50
52
|
// axios 实例对象
|
|
51
53
|
axios,
|
|
52
54
|
// axios 相关配置
|
|
@@ -117,42 +119,43 @@ function Demo({ orgId }) {
|
|
|
117
119
|
|
|
118
120
|
## DataModel
|
|
119
121
|
|
|
120
|
-
| 参数 | 类型 | 必填 | 默认值 | 说明
|
|
121
|
-
| ----------------------- | -------- | ---- | ------ |
|
|
122
|
-
| query | Object | 否 | - | query 参数对象
|
|
123
|
-
| createApi | string | 否 | - | post 接口地址
|
|
124
|
-
| getApi | string | 否 | - | 详情 get 接口地址
|
|
125
|
-
| getListApi | string | 否 | - | 列表 get 接口地址
|
|
126
|
-
| updateApi | string | 否 | - | put 接口地址
|
|
127
|
-
| deleteApi | string | 否 | - | delete 接口地址
|
|
128
|
-
| multipleDeleteApi | string | 否 | - | 批量删除 delete 接口地址
|
|
129
|
-
| createMap | Function | 否 | - | createApi 接口提交前的处理函数
|
|
130
|
-
| getMap | Function | 否 | - | getApi 接口返回结果的处理函数
|
|
131
|
-
| getListMap | Function | 否 | - | getListApi 接口返回结果的处理函数
|
|
132
|
-
| getListFunc | Function | 否 | - | 自定义的列表请求函数,优先级高于 getListApi
|
|
133
|
-
| updateMap | Function | 否 | - | updateApi 接口提交前的处理函数
|
|
134
|
-
| axios | Object | 否 | - | axios 实例对象
|
|
135
|
-
| axiosConf | Object | 否 | - | axios 相关配置
|
|
136
|
-
| getListAxiosConf | Object | 否 | - | getList 接口 axios 相关配置
|
|
137
|
-
| getAxiosConf | Object | 否 | - | get 接口 axios 相关配置
|
|
138
|
-
| createAxiosConf | Object | 否 | - | create 接口 axios 相关配置
|
|
139
|
-
| updateAxiosConf | Object | 否 | - | update 接口 axios 相关配置
|
|
140
|
-
| deleteAxiosConf | Object | 否 | - | delete 接口 axios 相关配置
|
|
141
|
-
| multipleDeleteAxiosConf | Object | 否 | - | multipleDelete 接口 axios 相关配置
|
|
142
|
-
| getListReqMap | Function | 否 | - | 列表接口 get 入参枚举函数
|
|
143
|
-
| getListResMap | Function | 否 | - | 列表接口 get 出参枚举函数
|
|
144
|
-
| getReqMap | Function | 否 | - | 详情接口 get 入参枚举函数
|
|
145
|
-
| getResMap | Function | 否 | - | 详情接口 get 出参枚举函数
|
|
146
|
-
| createReqMap | Function | 否 | - | 新增接口 get 入参枚举函数
|
|
147
|
-
| createResMap | Function | 否 | - | 新增接口 get 出参枚举函数
|
|
148
|
-
| updateReqMap | Function | 否 | - | 编辑接口 get 入参枚举函数
|
|
149
|
-
| updateResMap | Function | 否 | - | 编辑接口 get 出参枚举函数
|
|
150
|
-
| deleteReqMap | Function | 否 | - | 删除接口 get 入参枚举函数
|
|
151
|
-
| deleteResMap | Function | 否 | - | 删除接口 get 出参枚举函数
|
|
152
|
-
| multipleDeleteReqMap | Function | 否 | - | 批量删除接口 get 入参枚举函数
|
|
153
|
-
| multipleDeleteResMap | Function | 否 | - | 批量删除接口 get 出参枚举函数
|
|
154
|
-
| isResponseData
|
|
155
|
-
|
|
|
122
|
+
| 参数 | 类型 | 必填 | 默认值 | 说明 |
|
|
123
|
+
| ----------------------- | -------- | ---- | ------ | ---------------------------------------------- |
|
|
124
|
+
| query | Object | 否 | - | query 参数对象 |
|
|
125
|
+
| createApi | string | 否 | - | post 接口地址 |
|
|
126
|
+
| getApi | string | 否 | - | 详情 get 接口地址 |
|
|
127
|
+
| getListApi | string | 否 | - | 列表 get 接口地址 |
|
|
128
|
+
| updateApi | string | 否 | - | put 接口地址 |
|
|
129
|
+
| deleteApi | string | 否 | - | delete 接口地址 |
|
|
130
|
+
| multipleDeleteApi | string | 否 | - | 批量删除 delete 接口地址 |
|
|
131
|
+
| createMap | Function | 否 | - | createApi 接口提交前的处理函数 |
|
|
132
|
+
| getMap | Function | 否 | - | getApi 接口返回结果的处理函数 |
|
|
133
|
+
| getListMap | Function | 否 | - | getListApi 接口返回结果的处理函数 |
|
|
134
|
+
| getListFunc | Function | 否 | - | 自定义的列表请求函数,优先级高于 getListApi |
|
|
135
|
+
| updateMap | Function | 否 | - | updateApi 接口提交前的处理函数 |
|
|
136
|
+
| axios | Object | 否 | - | axios 实例对象 |
|
|
137
|
+
| axiosConf | Object | 否 | - | axios 相关配置 |
|
|
138
|
+
| getListAxiosConf | Object | 否 | - | getList 接口 axios 相关配置 |
|
|
139
|
+
| getAxiosConf | Object | 否 | - | get 接口 axios 相关配置 |
|
|
140
|
+
| createAxiosConf | Object | 否 | - | create 接口 axios 相关配置 |
|
|
141
|
+
| updateAxiosConf | Object | 否 | - | update 接口 axios 相关配置 |
|
|
142
|
+
| deleteAxiosConf | Object | 否 | - | delete 接口 axios 相关配置 |
|
|
143
|
+
| multipleDeleteAxiosConf | Object | 否 | - | multipleDelete 接口 axios 相关配置 |
|
|
144
|
+
| getListReqMap | Function | 否 | - | 列表接口 get 入参枚举函数 |
|
|
145
|
+
| getListResMap | Function | 否 | - | 列表接口 get 出参枚举函数 |
|
|
146
|
+
| getReqMap | Function | 否 | - | 详情接口 get 入参枚举函数 |
|
|
147
|
+
| getResMap | Function | 否 | - | 详情接口 get 出参枚举函数 |
|
|
148
|
+
| createReqMap | Function | 否 | - | 新增接口 get 入参枚举函数 |
|
|
149
|
+
| createResMap | Function | 否 | - | 新增接口 get 出参枚举函数 |
|
|
150
|
+
| updateReqMap | Function | 否 | - | 编辑接口 get 入参枚举函数 |
|
|
151
|
+
| updateResMap | Function | 否 | - | 编辑接口 get 出参枚举函数 |
|
|
152
|
+
| deleteReqMap | Function | 否 | - | 删除接口 get 入参枚举函数 |
|
|
153
|
+
| deleteResMap | Function | 否 | - | 删除接口 get 出参枚举函数 |
|
|
154
|
+
| multipleDeleteReqMap | Function | 否 | - | 批量删除接口 get 入参枚举函数 |
|
|
155
|
+
| multipleDeleteResMap | Function | 否 | - | 批量删除接口 get 出参枚举函数 |
|
|
156
|
+
| isResponseData | boolean | 否 | - | 是否返回完整的接口数据(response.data) |
|
|
157
|
+
| isResponse | boolean | 否 | - | 是否直接返回 response |
|
|
158
|
+
| handleResponse | Function | 否 | - | 统一 response 回调,用于处理定制 response 格式 |
|
|
156
159
|
|
|
157
160
|
## useDataModel
|
|
158
161
|
|
package/package.json
CHANGED
package/src/data-model.js
CHANGED
|
@@ -20,6 +20,8 @@ class DataModel {
|
|
|
20
20
|
getMap,
|
|
21
21
|
getListApi,
|
|
22
22
|
getListMap,
|
|
23
|
+
// 统一 response 回调,用于处理定制 response 格式
|
|
24
|
+
handleResponse,
|
|
23
25
|
getListFunc,
|
|
24
26
|
updateApi,
|
|
25
27
|
updateMap,
|
|
@@ -47,6 +49,7 @@ class DataModel {
|
|
|
47
49
|
this.getMap = getMap;
|
|
48
50
|
this.getListApi = getListApi;
|
|
49
51
|
this.getListMap = getListMap;
|
|
52
|
+
this.handleResponse = handleResponse;
|
|
50
53
|
this.getListFunc = getListFunc;
|
|
51
54
|
this.updateApi = updateApi;
|
|
52
55
|
this.updateMap = updateMap;
|
|
@@ -346,16 +349,20 @@ class DataModel {
|
|
|
346
349
|
reject(new Error("response not object"));
|
|
347
350
|
return;
|
|
348
351
|
}
|
|
349
|
-
let _res = response;
|
|
352
|
+
let _res = this.handleResponse ? this.handleResponse(response) : response;
|
|
350
353
|
// 兼容 传入的是 response.data 的情况
|
|
351
|
-
if (_res.data && _res.headers && _res.request
|
|
354
|
+
if (_res.data && _res.headers && _res.request) {
|
|
352
355
|
_res = _res.data;
|
|
353
356
|
}
|
|
354
357
|
const { code, data } = _res;
|
|
355
358
|
const message = this.handleMsg(response);
|
|
356
|
-
if (code
|
|
359
|
+
if (code == 200) {
|
|
357
360
|
let _data = data ?? {};
|
|
358
361
|
if (_.isObject(_data)) {
|
|
362
|
+
if (_data.content && _data.pageNumber && _data.total) {
|
|
363
|
+
_data.list = _data.content;
|
|
364
|
+
_data.pagination = { current: _data.pageNumber, total: _data.total };
|
|
365
|
+
}
|
|
359
366
|
// 前缀 _ 避免与 data 里已有的 message 冲突
|
|
360
367
|
_data._msg = message;
|
|
361
368
|
_data._message = message;
|
|
@@ -396,7 +403,13 @@ class DataModel {
|
|
|
396
403
|
return reject(err || { _msg: _$Temp.defaultErrMsg });
|
|
397
404
|
}
|
|
398
405
|
|
|
399
|
-
handleMsg(
|
|
406
|
+
handleMsg(
|
|
407
|
+
response,
|
|
408
|
+
{
|
|
409
|
+
// 是否使用 response.statusText 作为兜底 msg
|
|
410
|
+
useStatusText,
|
|
411
|
+
},
|
|
412
|
+
) {
|
|
400
413
|
let message =
|
|
401
414
|
(response.data && (response.data.message || response.data.msg)) ||
|
|
402
415
|
response.msg ||
|