diff --git a/src/api/login.js b/src/api/login.js
index 82bcbed..85fae50 100644
--- a/src/api/login.js
+++ b/src/api/login.js
@@ -7,6 +7,12 @@ export const userLogin = (data) => {
data,
});
};
-
+export const userSend = (data) => {
+ return request({
+ url: "/user/send",
+ method: "POST",
+ data,
+ });
+ };
\ No newline at end of file
diff --git a/src/pages/detail/index.vue b/src/pages/detail/index.vue
index 02241b0..ca0b787 100644
--- a/src/pages/detail/index.vue
+++ b/src/pages/detail/index.vue
@@ -32,6 +32,7 @@
color="#BCBCBC"
throttleTime="5"
:loading="loading"
+ v-if="!isDetail"
>取消
确认
- 画作名称
+ 画作名称
画作编号:
画家编号:
画家姓名:
平尺(寸):
+
+
+
+
+
@@ -99,6 +106,7 @@ page {
background-color: #fff;
box-shadow: 0 0 6px rgba(219, 218, 218, 0.5);
}
+
}
.button-container {
display: flex;
diff --git a/src/pages/login/index.vue b/src/pages/login/index.vue
index 6c6832b..188d033 100644
--- a/src/pages/login/index.vue
+++ b/src/pages/login/index.vue
@@ -7,9 +7,9 @@
仓库管理
使用你的手机号登录
-
-
-
+
+
+
-
-
+ 密码登录
+
+
-
+
已发送验证码至
123123123
@@ -65,35 +69,67 @@
v-if="!isCode"
>登录
+ 获取验证码
@@ -149,9 +187,6 @@ page {
height: 96rpx;
}
}
- .code-box {
- margin-top: 84rpx;
- }
}
}
diff --git a/src/pages/painting/index.vue b/src/pages/painting/index.vue
index 0205194..fbbed5c 100644
--- a/src/pages/painting/index.vue
+++ b/src/pages/painting/index.vue
@@ -15,7 +15,7 @@
A1
- A1列1行
+ A列1行
diff --git a/utils/service/index.js b/utils/service/index.js
index d8b6e4e..2082f25 100644
--- a/utils/service/index.js
+++ b/utils/service/index.js
@@ -8,6 +8,7 @@ const request = new Request({
interceptors: {
//实例的请求拦截器
requestInterceptors: (config) => {
+ console.log('config',config)
config.headers["Content-Type"] =
config.method === "get"
? "application/x-www-form-urlencoded"
@@ -27,7 +28,14 @@ const request = new Request({
if (response.data.status === 1) {
showMessage({ type: "error", message: response.data.msg });
}
+ if(response.data.code === 200){
+ uni.setStorageSync("token", response.data.Token);
+ uni.setStorageSync("userInfo", response.data.AccountInfo);
+ response.config.headers["Authorization"] = response.data.Token;
+ return request.request(response.config);
+ }
if (response.data.code === 401) {
+
uni.navigateTo({
url: "/pages/login/index",
});
@@ -35,7 +43,7 @@ const request = new Request({
if ([200, 201, 204].includes(response.status)) {
return response.config.responseType === "blob" ? response : response;
} else {
- showMessage({ type: "error", message: response.data.msg });
+ // showMessage({ type: "error", message: response.data.msg });
return Promise.reject(
new Error(response.data.msg || "An error occurred.")
);
diff --git a/utils/service/request/index.js b/utils/service/request/index.js
index b953f23..294cd0c 100644
--- a/utils/service/request/index.js
+++ b/utils/service/request/index.js
@@ -1,4 +1,4 @@
-import axios from "axios";
+import axios from 'axios';
class Request {
// axios 实例
instance;
@@ -12,35 +12,24 @@ class Request {
this.abortControllerMap = new Map();
this.interceptorsObj = config.interceptors;
// 拦截器执行顺序 接口请求 -> 实例请求 -> 全局请求 -> 实例响应 -> 全局响应 -> 接口响应
- this.instance.interceptors.request.use(
- (res) => {
- const controller = new AbortController();
- const url = res.url || "";
- res.signal = controller.signal;
- this.abortControllerMap.set(url, controller);
- return res;
- },
- (err) => err
- );
+ this.instance.interceptors.request.use((res) => {
+ const controller = new AbortController();
+ const url = res.url || '';
+ res.signal = controller.signal;
+ this.abortControllerMap.set(url, controller);
+ return res;
+ }, (err) => err);
// 使用实例拦截器
- this.instance.interceptors.request.use(
- this.interceptorsObj?.requestInterceptors,
- this.interceptorsObj?.requestInterceptorsCatch
- );
- this.instance.interceptors.response.use(
- this.interceptorsObj?.responseInterceptors,
- this.interceptorsObj?.responseInterceptorsCatch
- );
+ this.instance.interceptors.request.use(this.interceptorsObj?.requestInterceptors, this.interceptorsObj?.requestInterceptorsCatch);
+ this.instance.interceptors.response.use(this.interceptorsObj?.responseInterceptors, this.interceptorsObj?.responseInterceptorsCatch);
// 全局响应拦截器保证最后执行
this.instance.interceptors.response.use(
// 因为我们接口的数据都在res.data下,所以我们直接返回res.data
(res) => {
- const url = res.config.url || "";
+ const url = res.config.url || '';
this.abortControllerMap.delete(url);
return res.data;
- },
- (err) => err
- );
+ }, (err) => err);
}
request(config) {
return new Promise((resolve, reject) => {
@@ -85,3 +74,4 @@ class Request {
}
}
export default Request;
+