diff --git a/package-lock.json b/package-lock.json index 84901f6..aea4e66 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,11 +1,11 @@ { - "name": "dm-admin", + "name": "beefast-admin", "version": "0.1.0", "lockfileVersion": 3, "requires": true, "packages": { "": { - "name": "dm-admin", + "name": "beefast-admin", "version": "0.1.0", "dependencies": { "ant-design-vue": "^3.2.20", @@ -13,6 +13,7 @@ "nprogress": "^0.2.0", "vue": "^3.3.4", "vue-router": "^4.5.0", + "vuedraggable": "^4.1.0", "vuex": "^4.0.2" }, "devDependencies": { @@ -7694,6 +7695,12 @@ "websocket-driver": "^0.7.4" } }, + "node_modules/sortablejs": { + "version": "1.14.0", + "resolved": "https://registry.npmjs.org/sortablejs/-/sortablejs-1.14.0.tgz", + "integrity": "sha512-pBXvQCs5/33fdN1/39pPL0NZF20LeRbLQ5jtnheIPN9JQAaufGjKdWduZn4U7wCtVuzKhmRkI0DFYHYRbB2H1w==", + "license": "MIT" + }, "node_modules/source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -8490,6 +8497,18 @@ "vue": "^3.0.0" } }, + "node_modules/vuedraggable": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/vuedraggable/-/vuedraggable-4.1.0.tgz", + "integrity": "sha512-FU5HCWBmsf20GpP3eudURW3WdWTKIbEIQxh9/8GE806hydR9qZqRRxRE3RjqX7PkuLuMQG/A7n3cfj9rCEchww==", + "license": "MIT", + "dependencies": { + "sortablejs": "1.14.0" + }, + "peerDependencies": { + "vue": "^3.0.1" + } + }, "node_modules/vuex": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/vuex/-/vuex-4.0.2.tgz", diff --git a/package.json b/package.json index 0e0db07..892b75a 100644 --- a/package.json +++ b/package.json @@ -8,6 +8,7 @@ "nprogress": "^0.2.0", "vue": "^3.3.4", "vue-router": "^4.5.0", + "vuedraggable": "^4.1.0", "vuex": "^4.0.2" }, "devDependencies": { diff --git a/src/utils/request.js b/src/utils/request.js index 5d06938..2bd4d83 100644 --- a/src/utils/request.js +++ b/src/utils/request.js @@ -3,7 +3,10 @@ import { message } from 'ant-design-vue' const request = axios.create({ baseURL: 'http://127.0.0.1:8000', - timeout: 5000 + timeout: 5000, + headers: { + 'Content-Type': 'application/json' + } }) // 请求拦截器 @@ -13,6 +16,12 @@ request.interceptors.request.use( if (token) { config.headers.authorization = `Bearer ${token}` } + + // 处理文件上传 + if (config.data instanceof FormData) { + delete config.headers['Content-Type'] + } + return config }, error => { @@ -23,7 +32,13 @@ request.interceptors.request.use( // 响应拦截器 request.interceptors.response.use( response => { - return response.data + const res = response.data + if (res.code === 200) { + return res + } else { + message.error(res.message || '请求失败') + return Promise.reject(new Error(res.message || '请求失败')) + } }, error => { message.error(error.response?.data?.message || '请求失败') diff --git a/src/views/merchant/List.vue b/src/views/merchant/List.vue index 68091b0..ad02b6f 100644 --- a/src/views/merchant/List.vue +++ b/src/views/merchant/List.vue @@ -42,10 +42,49 @@ - +
+ + + +
+ + +
+ + + +
@@ -126,22 +165,6 @@ /> - - - -
- -
上传
-
-
-
@@ -160,15 +183,19 @@