widget.qw 1.0.81 → 1.0.83
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/.env.development +10 -10
- package/.env.production +8 -8
- package/README.md +75 -75
- package/build/style.css +471 -471
- package/build/widget.qw.es.js +64 -65
- package/build/widget.qw.umd.js +64 -65
- package/index.html +17 -17
- package/package.json +47 -47
- package/src/App.vue +26 -26
- package/src/api/index.js +165 -165
- package/src/components/AuditBar.vue +396 -396
- package/src/components/BillCard.vue +164 -164
- package/src/components/CascaderPicker.vue +132 -132
- package/src/components/CascaderPop.vue +371 -371
- package/src/components/CheckGroup.vue +113 -113
- package/src/components/DatetimePicker/DatetimePop.vue +342 -342
- package/src/components/DatetimePicker/index.vue +124 -124
- package/src/components/DayDropdown.vue +56 -56
- package/src/components/FilePicker.vue +169 -169
- package/src/components/Input.vue +80 -80
- package/src/components/MonthDropdown.vue +51 -51
- package/src/components/MultiPicker.vue +123 -123
- package/src/components/ObjsEditor.vue +334 -334
- package/src/components/SecretNotify.js +5 -5
- package/src/components/Sheet.vue +92 -92
- package/src/components/SingleApiPicker.vue +108 -108
- package/src/components/SinglePicker.vue +102 -102
- package/src/components/SingleUserSelector.vue +425 -425
- package/src/components/Switch.vue +64 -64
- package/src/components/TreePicker.vue +113 -113
- package/src/components/UserPicker.vue +106 -106
- package/src/components/UserProfile.vue +129 -129
- package/src/components/UsersPicker.vue +118 -118
- package/src/components/YearDropdown.vue +59 -59
- package/src/components/data_selector.vue +303 -303
- package/src/components/image_picker.vue +123 -123
- package/src/components/images_picker.vue +195 -195
- package/src/components/index.js +162 -162
- package/src/components/mult_list_selector.vue +155 -155
- package/src/components/subdepartment_selector.vue +481 -481
- package/src/components/user_selector.vue +639 -639
- package/src/components/widget/DataPop.vue +95 -95
- package/src/components/widget/TreePop.vue +88 -88
- package/src/components/widget/UserPop.vue +347 -347
- package/src/env.d.ts +8 -8
- package/src/main.js +117 -117
- package/src/router/index.ts +173 -173
- package/src/util/array_util.js +32 -32
- package/src/util/auth_util.js +72 -73
- package/src/util/bool_util.js +5 -5
- package/src/util/bus.js +1 -1
- package/src/util/cache_util.js +18 -18
- package/src/util/errer_code.js +6 -6
- package/src/util/eval_util.js +19 -19
- package/src/util/icon_util.js +36 -36
- package/src/util/image_util.js +27 -27
- package/src/util/index.js +57 -57
- package/src/util/num_util.js +70 -70
- package/src/util/obj_util.js +28 -28
- package/src/util/request.js +73 -73
- package/src/util/request_json.js +71 -71
- package/src/util/request_json_mute.js +65 -65
- package/src/util/request_upload.js +79 -79
- package/src/util/route_util.js +31 -31
- package/src/util/str_util.js +143 -143
- package/src/util/time_util.js +406 -406
- package/src/util/toast_util.js +24 -24
- package/src/util/tree_util.js +153 -153
- package/src/util/uuid_util.js +9 -9
- package/src/util/validate.js +182 -182
- package/src/util/vue_filter.js +223 -223
- package/src/views/auditbar/index.vue +78 -78
- package/src/views/billcard/index.vue +48 -48
- package/src/views/cascaderpop/index.vue +90 -90
- package/src/views/checkgroup/index.vue +35 -35
- package/src/views/dataSelector/index.vue +48 -48
- package/src/views/datetimepicker/index.vue +34 -34
- package/src/views/daydropdown/index.vue +31 -31
- package/src/views/filepicker/index.vue +32 -32
- package/src/views/imagepicker/index.vue +31 -31
- package/src/views/imagespicker/index.vue +37 -37
- package/src/views/input/index.vue +35 -35
- package/src/views/monthdropdown/index.vue +31 -31
- package/src/views/multListSelector/index.vue +61 -61
- package/src/views/multipicker/index.vue +36 -36
- package/src/views/objseditor/index.vue +277 -277
- package/src/views/productSelector/index.vue +35 -35
- package/src/views/projectpicker/index.vue +41 -41
- package/src/views/secretnotify/index.vue +27 -27
- package/src/views/sheet/index.vue +45 -45
- package/src/views/singlepicker/index.vue +35 -35
- package/src/views/subdepartmentSelector/index.vue +40 -40
- package/src/views/switch/index.vue +34 -34
- package/src/views/treepicker/index.vue +41 -41
- package/src/views/userSelector/index.vue +54 -54
- package/src/views/userSelectorNew/index.vue +45 -45
- package/src/views/userpicker/index.vue +43 -43
- package/src/views/userprofile/index.vue +30 -30
- package/src/views/userspicker/index.vue +43 -43
- package/src/views/yeardropdown/index.vue +32 -32
- package/src/vm/index.js +1 -1
- package/tsconfig.json +19 -19
- package/tsconfig.node.json +8 -8
- package/vite.config.ts +122 -122
package/src/util/obj_util.js
CHANGED
|
@@ -1,29 +1,29 @@
|
|
|
1
|
-
export function objSwapPrev(obj, targetProp) {
|
|
2
|
-
const keys = Object.keys(obj);
|
|
3
|
-
const targetIndex = keys.indexOf(targetProp);
|
|
4
|
-
if (targetIndex > 0) {
|
|
5
|
-
const prevIndex = targetIndex - 1;
|
|
6
|
-
// 交换属性位置
|
|
7
|
-
[keys[targetIndex], keys[prevIndex]] = [keys[prevIndex], keys[targetIndex]];
|
|
8
|
-
}
|
|
9
|
-
const newObj = {};
|
|
10
|
-
keys.forEach(key => {
|
|
11
|
-
newObj[key] = obj[key];
|
|
12
|
-
});
|
|
13
|
-
return newObj;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
export function objSwapNext(obj, targetProp) {
|
|
17
|
-
const keys = Object.keys(obj);
|
|
18
|
-
const targetIndex = keys.indexOf(targetProp);
|
|
19
|
-
if (targetIndex < keys.length - 1) {
|
|
20
|
-
const nextIndex = targetIndex + 1;
|
|
21
|
-
// 交换属性位置
|
|
22
|
-
[keys[targetIndex], keys[nextIndex]] = [keys[nextIndex], keys[targetIndex]];
|
|
23
|
-
}
|
|
24
|
-
const newObj = {};
|
|
25
|
-
keys.forEach(key => {
|
|
26
|
-
newObj[key] = obj[key];
|
|
27
|
-
});
|
|
28
|
-
return newObj;
|
|
1
|
+
export function objSwapPrev(obj, targetProp) {
|
|
2
|
+
const keys = Object.keys(obj);
|
|
3
|
+
const targetIndex = keys.indexOf(targetProp);
|
|
4
|
+
if (targetIndex > 0) {
|
|
5
|
+
const prevIndex = targetIndex - 1;
|
|
6
|
+
// 交换属性位置
|
|
7
|
+
[keys[targetIndex], keys[prevIndex]] = [keys[prevIndex], keys[targetIndex]];
|
|
8
|
+
}
|
|
9
|
+
const newObj = {};
|
|
10
|
+
keys.forEach(key => {
|
|
11
|
+
newObj[key] = obj[key];
|
|
12
|
+
});
|
|
13
|
+
return newObj;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export function objSwapNext(obj, targetProp) {
|
|
17
|
+
const keys = Object.keys(obj);
|
|
18
|
+
const targetIndex = keys.indexOf(targetProp);
|
|
19
|
+
if (targetIndex < keys.length - 1) {
|
|
20
|
+
const nextIndex = targetIndex + 1;
|
|
21
|
+
// 交换属性位置
|
|
22
|
+
[keys[targetIndex], keys[nextIndex]] = [keys[nextIndex], keys[targetIndex]];
|
|
23
|
+
}
|
|
24
|
+
const newObj = {};
|
|
25
|
+
keys.forEach(key => {
|
|
26
|
+
newObj[key] = obj[key];
|
|
27
|
+
});
|
|
28
|
+
return newObj;
|
|
29
29
|
}
|
package/src/util/request.js
CHANGED
|
@@ -1,74 +1,74 @@
|
|
|
1
|
-
import vm from '../vm'
|
|
2
|
-
import axios from "axios"
|
|
3
|
-
import qs from "qs"
|
|
4
|
-
import { NEED_LOGIN_CODES } from './errer_code.js'
|
|
5
|
-
import { getToken,TOKEN_KEY } from './auth_util.js'
|
|
6
|
-
import util from './index.js'
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
// create an axios instance
|
|
10
|
-
const service = axios.create({
|
|
11
|
-
baseURL: '', // url = domain + request url
|
|
12
|
-
withCredentials: true, // send cookies when cross-domain requests
|
|
13
|
-
timeout: 1000 * 60 * 10, // request timeout
|
|
14
|
-
})
|
|
15
|
-
|
|
16
|
-
//请求拦截器
|
|
17
|
-
service.interceptors.request.use(
|
|
18
|
-
config => {
|
|
19
|
-
util.showLoading()
|
|
20
|
-
|
|
21
|
-
//请求头加token
|
|
22
|
-
config.headers[TOKEN_KEY] = getToken()
|
|
23
|
-
|
|
24
|
-
if (config.method.toLowerCase() == 'post') {
|
|
25
|
-
config.data = qs.stringify(config.data)
|
|
26
|
-
}
|
|
27
|
-
return config
|
|
28
|
-
},
|
|
29
|
-
error => {
|
|
30
|
-
// do something with request error
|
|
31
|
-
console.log(error) // for debug
|
|
32
|
-
util.hideLoading()
|
|
33
|
-
util.warnToast(error)
|
|
34
|
-
return Promise.reject(error)
|
|
35
|
-
}
|
|
36
|
-
)
|
|
37
|
-
|
|
38
|
-
//响应拦截器
|
|
39
|
-
service.interceptors.response.use(
|
|
40
|
-
response => {
|
|
41
|
-
util.hideLoading()
|
|
42
|
-
|
|
43
|
-
const res = response.data
|
|
44
|
-
console.log(res)
|
|
45
|
-
|
|
46
|
-
if (res.code !== 200) {
|
|
47
|
-
util.warnToast(res.msg || "Error")
|
|
48
|
-
|
|
49
|
-
console.log(NEED_LOGIN_CODES)
|
|
50
|
-
|
|
51
|
-
if (NEED_LOGIN_CODES.indexOf(res.code) >= 0) {
|
|
52
|
-
util.warnToast('请登录')
|
|
53
|
-
setTimeout(() => {
|
|
54
|
-
if (vm.needLoginCallback) {
|
|
55
|
-
vm.needLoginCallback()
|
|
56
|
-
}
|
|
57
|
-
return
|
|
58
|
-
}, 1500)
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
return res
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
return res
|
|
65
|
-
},
|
|
66
|
-
error => {
|
|
67
|
-
util.hideLoading()
|
|
68
|
-
console.log("err" + error) // for debug
|
|
69
|
-
util.warnToast(error.message)
|
|
70
|
-
return Promise.reject(error)
|
|
71
|
-
}
|
|
72
|
-
)
|
|
73
|
-
|
|
1
|
+
import vm from '../vm'
|
|
2
|
+
import axios from "axios"
|
|
3
|
+
import qs from "qs"
|
|
4
|
+
import { NEED_LOGIN_CODES } from './errer_code.js'
|
|
5
|
+
import { getToken,TOKEN_KEY } from './auth_util.js'
|
|
6
|
+
import util from './index.js'
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
// create an axios instance
|
|
10
|
+
const service = axios.create({
|
|
11
|
+
baseURL: '', // url = domain + request url
|
|
12
|
+
withCredentials: true, // send cookies when cross-domain requests
|
|
13
|
+
timeout: 1000 * 60 * 10, // request timeout
|
|
14
|
+
})
|
|
15
|
+
|
|
16
|
+
//请求拦截器
|
|
17
|
+
service.interceptors.request.use(
|
|
18
|
+
config => {
|
|
19
|
+
util.showLoading()
|
|
20
|
+
|
|
21
|
+
//请求头加token
|
|
22
|
+
config.headers[TOKEN_KEY] = getToken()
|
|
23
|
+
|
|
24
|
+
if (config.method.toLowerCase() == 'post') {
|
|
25
|
+
config.data = qs.stringify(config.data)
|
|
26
|
+
}
|
|
27
|
+
return config
|
|
28
|
+
},
|
|
29
|
+
error => {
|
|
30
|
+
// do something with request error
|
|
31
|
+
console.log(error) // for debug
|
|
32
|
+
util.hideLoading()
|
|
33
|
+
util.warnToast(error)
|
|
34
|
+
return Promise.reject(error)
|
|
35
|
+
}
|
|
36
|
+
)
|
|
37
|
+
|
|
38
|
+
//响应拦截器
|
|
39
|
+
service.interceptors.response.use(
|
|
40
|
+
response => {
|
|
41
|
+
util.hideLoading()
|
|
42
|
+
|
|
43
|
+
const res = response.data
|
|
44
|
+
console.log(res)
|
|
45
|
+
|
|
46
|
+
if (res.code !== 200) {
|
|
47
|
+
util.warnToast(res.msg || "Error")
|
|
48
|
+
|
|
49
|
+
console.log(NEED_LOGIN_CODES)
|
|
50
|
+
|
|
51
|
+
if (NEED_LOGIN_CODES.indexOf(res.code) >= 0) {
|
|
52
|
+
util.warnToast('请登录')
|
|
53
|
+
setTimeout(() => {
|
|
54
|
+
if (vm.needLoginCallback) {
|
|
55
|
+
vm.needLoginCallback()
|
|
56
|
+
}
|
|
57
|
+
return
|
|
58
|
+
}, 1500)
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
return res
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
return res
|
|
65
|
+
},
|
|
66
|
+
error => {
|
|
67
|
+
util.hideLoading()
|
|
68
|
+
console.log("err" + error) // for debug
|
|
69
|
+
util.warnToast(error.message)
|
|
70
|
+
return Promise.reject(error)
|
|
71
|
+
}
|
|
72
|
+
)
|
|
73
|
+
|
|
74
74
|
export default service
|
package/src/util/request_json.js
CHANGED
|
@@ -1,72 +1,72 @@
|
|
|
1
|
-
import vm from '../vm'
|
|
2
|
-
import axios from "axios"
|
|
3
|
-
import qs from "qs"
|
|
4
|
-
import { NEED_LOGIN_CODES } from './errer_code.js'
|
|
5
|
-
import { getToken,TOKEN_KEY } from './auth_util.js'
|
|
6
|
-
import util from './index.js'
|
|
7
|
-
|
|
8
|
-
// create an axios instance
|
|
9
|
-
const service = axios.create({
|
|
10
|
-
baseURL: '', // url = domain + request url
|
|
11
|
-
withCredentials: true, // send cookies when cross-domain requests
|
|
12
|
-
timeout: 1000 * 60 * 10, // request timeout
|
|
13
|
-
})
|
|
14
|
-
|
|
15
|
-
//请求拦截器
|
|
16
|
-
service.interceptors.request.use(
|
|
17
|
-
config => {
|
|
18
|
-
util.showLoading()
|
|
19
|
-
|
|
20
|
-
//请求头加token
|
|
21
|
-
config.headers[TOKEN_KEY] = getToken()
|
|
22
|
-
|
|
23
|
-
config.headers['Content-Type'] = 'application/json'
|
|
24
|
-
config.data = JSON.stringify(config.data)
|
|
25
|
-
return config
|
|
26
|
-
},
|
|
27
|
-
error => {
|
|
28
|
-
// do something with request error
|
|
29
|
-
console.log(error) // for debug
|
|
30
|
-
util.hideLoading()
|
|
31
|
-
util.warnToast(error)
|
|
32
|
-
return Promise.reject(error)
|
|
33
|
-
}
|
|
34
|
-
)
|
|
35
|
-
|
|
36
|
-
//响应拦截器
|
|
37
|
-
service.interceptors.response.use(
|
|
38
|
-
response => {
|
|
39
|
-
util.hideLoading()
|
|
40
|
-
|
|
41
|
-
const res = response.data
|
|
42
|
-
console.log(res)
|
|
43
|
-
|
|
44
|
-
if (res.code !== 200) {
|
|
45
|
-
util.warnToast(res.msg || "Error")
|
|
46
|
-
|
|
47
|
-
console.log(NEED_LOGIN_CODES)
|
|
48
|
-
|
|
49
|
-
if (NEED_LOGIN_CODES.indexOf(res.code) >= 0) {
|
|
50
|
-
util.warnToast('请登录')
|
|
51
|
-
setTimeout(() => {
|
|
52
|
-
if (vm.needLoginCallback) {
|
|
53
|
-
vm.needLoginCallback()
|
|
54
|
-
}
|
|
55
|
-
return
|
|
56
|
-
}, 1500)
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
return res
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
return res
|
|
63
|
-
},
|
|
64
|
-
error => {
|
|
65
|
-
util.hideLoading()
|
|
66
|
-
console.log("err" + error) // for debug
|
|
67
|
-
util.warnToast(error.message)
|
|
68
|
-
return Promise.reject(error)
|
|
69
|
-
}
|
|
70
|
-
)
|
|
71
|
-
|
|
1
|
+
import vm from '../vm'
|
|
2
|
+
import axios from "axios"
|
|
3
|
+
import qs from "qs"
|
|
4
|
+
import { NEED_LOGIN_CODES } from './errer_code.js'
|
|
5
|
+
import { getToken,TOKEN_KEY } from './auth_util.js'
|
|
6
|
+
import util from './index.js'
|
|
7
|
+
|
|
8
|
+
// create an axios instance
|
|
9
|
+
const service = axios.create({
|
|
10
|
+
baseURL: '', // url = domain + request url
|
|
11
|
+
withCredentials: true, // send cookies when cross-domain requests
|
|
12
|
+
timeout: 1000 * 60 * 10, // request timeout
|
|
13
|
+
})
|
|
14
|
+
|
|
15
|
+
//请求拦截器
|
|
16
|
+
service.interceptors.request.use(
|
|
17
|
+
config => {
|
|
18
|
+
util.showLoading()
|
|
19
|
+
|
|
20
|
+
//请求头加token
|
|
21
|
+
config.headers[TOKEN_KEY] = getToken()
|
|
22
|
+
|
|
23
|
+
config.headers['Content-Type'] = 'application/json'
|
|
24
|
+
config.data = JSON.stringify(config.data)
|
|
25
|
+
return config
|
|
26
|
+
},
|
|
27
|
+
error => {
|
|
28
|
+
// do something with request error
|
|
29
|
+
console.log(error) // for debug
|
|
30
|
+
util.hideLoading()
|
|
31
|
+
util.warnToast(error)
|
|
32
|
+
return Promise.reject(error)
|
|
33
|
+
}
|
|
34
|
+
)
|
|
35
|
+
|
|
36
|
+
//响应拦截器
|
|
37
|
+
service.interceptors.response.use(
|
|
38
|
+
response => {
|
|
39
|
+
util.hideLoading()
|
|
40
|
+
|
|
41
|
+
const res = response.data
|
|
42
|
+
console.log(res)
|
|
43
|
+
|
|
44
|
+
if (res.code !== 200) {
|
|
45
|
+
util.warnToast(res.msg || "Error")
|
|
46
|
+
|
|
47
|
+
console.log(NEED_LOGIN_CODES)
|
|
48
|
+
|
|
49
|
+
if (NEED_LOGIN_CODES.indexOf(res.code) >= 0) {
|
|
50
|
+
util.warnToast('请登录')
|
|
51
|
+
setTimeout(() => {
|
|
52
|
+
if (vm.needLoginCallback) {
|
|
53
|
+
vm.needLoginCallback()
|
|
54
|
+
}
|
|
55
|
+
return
|
|
56
|
+
}, 1500)
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
return res
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
return res
|
|
63
|
+
},
|
|
64
|
+
error => {
|
|
65
|
+
util.hideLoading()
|
|
66
|
+
console.log("err" + error) // for debug
|
|
67
|
+
util.warnToast(error.message)
|
|
68
|
+
return Promise.reject(error)
|
|
69
|
+
}
|
|
70
|
+
)
|
|
71
|
+
|
|
72
72
|
export default service
|
|
@@ -1,66 +1,66 @@
|
|
|
1
|
-
import vm from '../vm'
|
|
2
|
-
import axios from "axios"
|
|
3
|
-
import qs from "qs"
|
|
4
|
-
import { NEED_LOGIN_CODES } from './errer_code.js'
|
|
5
|
-
import { getToken,TOKEN_KEY } from './auth_util.js'
|
|
6
|
-
import util from './index.js'
|
|
7
|
-
|
|
8
|
-
// create an axios instance
|
|
9
|
-
const service = axios.create({
|
|
10
|
-
baseURL: '', // url = domain + request url
|
|
11
|
-
withCredentials: true, // send cookies when cross-domain requests
|
|
12
|
-
timeout: 1000 * 60 * 10, // request timeout
|
|
13
|
-
})
|
|
14
|
-
|
|
15
|
-
//请求拦截器
|
|
16
|
-
service.interceptors.request.use(
|
|
17
|
-
config => {
|
|
18
|
-
//请求头加token
|
|
19
|
-
config.headers[TOKEN_KEY] = getToken()
|
|
20
|
-
|
|
21
|
-
config.headers['Content-Type'] = 'application/json'
|
|
22
|
-
config.data = JSON.stringify(config.data)
|
|
23
|
-
return config
|
|
24
|
-
},
|
|
25
|
-
error => {
|
|
26
|
-
// do something with request error
|
|
27
|
-
console.log(error) // for debug
|
|
28
|
-
util.warnToast(error)
|
|
29
|
-
return Promise.reject(error)
|
|
30
|
-
}
|
|
31
|
-
)
|
|
32
|
-
|
|
33
|
-
//响应拦截器
|
|
34
|
-
service.interceptors.response.use(
|
|
35
|
-
response => {
|
|
36
|
-
const res = response.data
|
|
37
|
-
console.log(res)
|
|
38
|
-
|
|
39
|
-
if (res.code !== 200) {
|
|
40
|
-
util.warnToast(res.msg || "Error")
|
|
41
|
-
|
|
42
|
-
console.log(NEED_LOGIN_CODES)
|
|
43
|
-
|
|
44
|
-
if (NEED_LOGIN_CODES.indexOf(res.code) >= 0) {
|
|
45
|
-
util.warnToast('请登录')
|
|
46
|
-
setTimeout(() => {
|
|
47
|
-
if (vm.needLoginCallback) {
|
|
48
|
-
vm.needLoginCallback()
|
|
49
|
-
}
|
|
50
|
-
return
|
|
51
|
-
}, 1500)
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
return res
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
return res
|
|
58
|
-
},
|
|
59
|
-
error => {
|
|
60
|
-
console.log("err" + error) // for debug
|
|
61
|
-
util.warnToast(error.message)
|
|
62
|
-
return Promise.reject(error)
|
|
63
|
-
}
|
|
64
|
-
)
|
|
65
|
-
|
|
1
|
+
import vm from '../vm'
|
|
2
|
+
import axios from "axios"
|
|
3
|
+
import qs from "qs"
|
|
4
|
+
import { NEED_LOGIN_CODES } from './errer_code.js'
|
|
5
|
+
import { getToken,TOKEN_KEY } from './auth_util.js'
|
|
6
|
+
import util from './index.js'
|
|
7
|
+
|
|
8
|
+
// create an axios instance
|
|
9
|
+
const service = axios.create({
|
|
10
|
+
baseURL: '', // url = domain + request url
|
|
11
|
+
withCredentials: true, // send cookies when cross-domain requests
|
|
12
|
+
timeout: 1000 * 60 * 10, // request timeout
|
|
13
|
+
})
|
|
14
|
+
|
|
15
|
+
//请求拦截器
|
|
16
|
+
service.interceptors.request.use(
|
|
17
|
+
config => {
|
|
18
|
+
//请求头加token
|
|
19
|
+
config.headers[TOKEN_KEY] = getToken()
|
|
20
|
+
|
|
21
|
+
config.headers['Content-Type'] = 'application/json'
|
|
22
|
+
config.data = JSON.stringify(config.data)
|
|
23
|
+
return config
|
|
24
|
+
},
|
|
25
|
+
error => {
|
|
26
|
+
// do something with request error
|
|
27
|
+
console.log(error) // for debug
|
|
28
|
+
util.warnToast(error)
|
|
29
|
+
return Promise.reject(error)
|
|
30
|
+
}
|
|
31
|
+
)
|
|
32
|
+
|
|
33
|
+
//响应拦截器
|
|
34
|
+
service.interceptors.response.use(
|
|
35
|
+
response => {
|
|
36
|
+
const res = response.data
|
|
37
|
+
console.log(res)
|
|
38
|
+
|
|
39
|
+
if (res.code !== 200) {
|
|
40
|
+
util.warnToast(res.msg || "Error")
|
|
41
|
+
|
|
42
|
+
console.log(NEED_LOGIN_CODES)
|
|
43
|
+
|
|
44
|
+
if (NEED_LOGIN_CODES.indexOf(res.code) >= 0) {
|
|
45
|
+
util.warnToast('请登录')
|
|
46
|
+
setTimeout(() => {
|
|
47
|
+
if (vm.needLoginCallback) {
|
|
48
|
+
vm.needLoginCallback()
|
|
49
|
+
}
|
|
50
|
+
return
|
|
51
|
+
}, 1500)
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
return res
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
return res
|
|
58
|
+
},
|
|
59
|
+
error => {
|
|
60
|
+
console.log("err" + error) // for debug
|
|
61
|
+
util.warnToast(error.message)
|
|
62
|
+
return Promise.reject(error)
|
|
63
|
+
}
|
|
64
|
+
)
|
|
65
|
+
|
|
66
66
|
export default service
|
|
@@ -1,79 +1,79 @@
|
|
|
1
|
-
import vm from '../vm'
|
|
2
|
-
import axios from 'axios'
|
|
3
|
-
import { getToken, TOKEN_KEY } from './auth_util'
|
|
4
|
-
import { NEED_LOGIN_CODES } from './errer_code'
|
|
5
|
-
import util from './index.js'
|
|
6
|
-
|
|
7
|
-
// create an axios instance
|
|
8
|
-
const service = axios.create({
|
|
9
|
-
baseURL: '', // url = domain + base path + request url
|
|
10
|
-
withCredentials: true, // send cookies when cross-domain requests
|
|
11
|
-
timeout: 1000 * 60 * 10, // request timeout
|
|
12
|
-
})
|
|
13
|
-
|
|
14
|
-
//请求拦截器
|
|
15
|
-
service.interceptors.request.use(
|
|
16
|
-
(config) => {
|
|
17
|
-
util.showLoading()
|
|
18
|
-
|
|
19
|
-
//设置文件上传请求头
|
|
20
|
-
config.headers['Content-Type'] = 'multipart/form-data'
|
|
21
|
-
|
|
22
|
-
//请求头加token
|
|
23
|
-
config.headers[TOKEN_KEY] = getToken()
|
|
24
|
-
|
|
25
|
-
//解析并传入post参数
|
|
26
|
-
if (config.method.toLowerCase() == 'post') {
|
|
27
|
-
const form = new FormData()
|
|
28
|
-
// 文件对象
|
|
29
|
-
for (const key in config.data) {
|
|
30
|
-
form.append(key, config.data[key])
|
|
31
|
-
}
|
|
32
|
-
config.data = form
|
|
33
|
-
}
|
|
34
|
-
return config
|
|
35
|
-
},
|
|
36
|
-
(error) => {
|
|
37
|
-
util.hideLoading()
|
|
38
|
-
// do something with request error
|
|
39
|
-
console.log(error) // for debug
|
|
40
|
-
if (error.message && error.message.toUpperCase().indexOf('NETWORK') >= 0) {
|
|
41
|
-
util.warnToast('网络连接失败')
|
|
42
|
-
} else {
|
|
43
|
-
util.warnToast(error.msg || error.message || error)
|
|
44
|
-
}
|
|
45
|
-
return Promise.reject(error)
|
|
46
|
-
}
|
|
47
|
-
)
|
|
48
|
-
|
|
49
|
-
//响应拦截器
|
|
50
|
-
service.interceptors.response.use(
|
|
51
|
-
(response) => {
|
|
52
|
-
util.hideLoading()
|
|
53
|
-
|
|
54
|
-
const res = response.data
|
|
55
|
-
console.log(res)
|
|
56
|
-
|
|
57
|
-
if (res.code !== 200) {
|
|
58
|
-
if (NEED_LOGIN_CODES.indexOf(res.code) >= 0) {
|
|
59
|
-
if (vm.needLoginCallback) {
|
|
60
|
-
vm.needLoginCallback()
|
|
61
|
-
}
|
|
62
|
-
} else {
|
|
63
|
-
util.warnToast(res.msg || 'Error')
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
return Promise.reject(new Error(res.msg || 'Error'))
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
return Promise.resolve(res)
|
|
70
|
-
},
|
|
71
|
-
(error) => {
|
|
72
|
-
util.hideLoading()
|
|
73
|
-
console.log('err' + error) // for debug
|
|
74
|
-
util.warnToast(error)
|
|
75
|
-
return Promise.reject(error)
|
|
76
|
-
}
|
|
77
|
-
)
|
|
78
|
-
|
|
79
|
-
export default service
|
|
1
|
+
import vm from '../vm'
|
|
2
|
+
import axios from 'axios'
|
|
3
|
+
import { getToken, TOKEN_KEY } from './auth_util'
|
|
4
|
+
import { NEED_LOGIN_CODES } from './errer_code'
|
|
5
|
+
import util from './index.js'
|
|
6
|
+
|
|
7
|
+
// create an axios instance
|
|
8
|
+
const service = axios.create({
|
|
9
|
+
baseURL: '', // url = domain + base path + request url
|
|
10
|
+
withCredentials: true, // send cookies when cross-domain requests
|
|
11
|
+
timeout: 1000 * 60 * 10, // request timeout
|
|
12
|
+
})
|
|
13
|
+
|
|
14
|
+
//请求拦截器
|
|
15
|
+
service.interceptors.request.use(
|
|
16
|
+
(config) => {
|
|
17
|
+
util.showLoading()
|
|
18
|
+
|
|
19
|
+
//设置文件上传请求头
|
|
20
|
+
config.headers['Content-Type'] = 'multipart/form-data'
|
|
21
|
+
|
|
22
|
+
//请求头加token
|
|
23
|
+
config.headers[TOKEN_KEY] = getToken()
|
|
24
|
+
|
|
25
|
+
//解析并传入post参数
|
|
26
|
+
if (config.method.toLowerCase() == 'post') {
|
|
27
|
+
const form = new FormData()
|
|
28
|
+
// 文件对象
|
|
29
|
+
for (const key in config.data) {
|
|
30
|
+
form.append(key, config.data[key])
|
|
31
|
+
}
|
|
32
|
+
config.data = form
|
|
33
|
+
}
|
|
34
|
+
return config
|
|
35
|
+
},
|
|
36
|
+
(error) => {
|
|
37
|
+
util.hideLoading()
|
|
38
|
+
// do something with request error
|
|
39
|
+
console.log(error) // for debug
|
|
40
|
+
if (error.message && error.message.toUpperCase().indexOf('NETWORK') >= 0) {
|
|
41
|
+
util.warnToast('网络连接失败')
|
|
42
|
+
} else {
|
|
43
|
+
util.warnToast(error.msg || error.message || error)
|
|
44
|
+
}
|
|
45
|
+
return Promise.reject(error)
|
|
46
|
+
}
|
|
47
|
+
)
|
|
48
|
+
|
|
49
|
+
//响应拦截器
|
|
50
|
+
service.interceptors.response.use(
|
|
51
|
+
(response) => {
|
|
52
|
+
util.hideLoading()
|
|
53
|
+
|
|
54
|
+
const res = response.data
|
|
55
|
+
console.log(res)
|
|
56
|
+
|
|
57
|
+
if (res.code !== 200) {
|
|
58
|
+
if (NEED_LOGIN_CODES.indexOf(res.code) >= 0) {
|
|
59
|
+
if (vm.needLoginCallback) {
|
|
60
|
+
vm.needLoginCallback()
|
|
61
|
+
}
|
|
62
|
+
} else {
|
|
63
|
+
util.warnToast(res.msg || 'Error')
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
return Promise.reject(new Error(res.msg || 'Error'))
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
return Promise.resolve(res)
|
|
70
|
+
},
|
|
71
|
+
(error) => {
|
|
72
|
+
util.hideLoading()
|
|
73
|
+
console.log('err' + error) // for debug
|
|
74
|
+
util.warnToast(error)
|
|
75
|
+
return Promise.reject(error)
|
|
76
|
+
}
|
|
77
|
+
)
|
|
78
|
+
|
|
79
|
+
export default service
|