From 4617c65581baa47f06d6e428655875fcf6cbc9e8 Mon Sep 17 00:00:00 2001 From: Jason <5340635+wen-jason@user.noreply.gitee.com> Date: Wed, 29 Mar 2023 15:52:38 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BE=AE=E4=BF=A1=E7=99=BB=E5=BD=95=E5=BC=95?= =?UTF-8?q?=E5=AF=BC=E5=A4=B4=E5=83=8F=E6=98=B5=E7=A7=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- uniapp/src/api/user.ts | 15 +++ .../avatar-upload/avatar-upload.vue | 107 ++++++++++++++++++ .../mplogin-popup/mplogin-popup.vue | 97 ++++++++++++++++ uniapp/src/pages/login/login.vue | 24 +++- uniapp/src/pages/user_set/user_set.vue | 86 ++++++++++---- uniapp/src/utils/util.ts | 31 +++++ 6 files changed, 338 insertions(+), 22 deletions(-) create mode 100644 uniapp/src/components/avatar-upload/avatar-upload.vue create mode 100644 uniapp/src/components/mplogin-popup/mplogin-popup.vue diff --git a/uniapp/src/api/user.ts b/uniapp/src/api/user.ts index 8fa0de03..c81c137b 100644 --- a/uniapp/src/api/user.ts +++ b/uniapp/src/api/user.ts @@ -26,3 +26,18 @@ export function userMnpMobile(data: any) { export function userChangePwd(data: any) { return request.post({ url: '/user/changePwd', data }, { isAuth: true }) } + +// 绑定小程序 +export function mnpAuthBind(data: any) { + return request.post({ url: '/user/bindMnp', data }) +} + +// 绑定公众号 +export function oaAuthBind(data: any) { + return request.post({ url: '/user/bindOa', data }) +} + +//更新微信小程序头像昵称 +export function updateUser(data: Record, header: any) { + return request.post({ url: '/user/updateUser', data, header }) +} diff --git a/uniapp/src/components/avatar-upload/avatar-upload.vue b/uniapp/src/components/avatar-upload/avatar-upload.vue new file mode 100644 index 00000000..e1d91cda --- /dev/null +++ b/uniapp/src/components/avatar-upload/avatar-upload.vue @@ -0,0 +1,107 @@ + + + + diff --git a/uniapp/src/components/mplogin-popup/mplogin-popup.vue b/uniapp/src/components/mplogin-popup/mplogin-popup.vue new file mode 100644 index 00000000..a9514cd4 --- /dev/null +++ b/uniapp/src/components/mplogin-popup/mplogin-popup.vue @@ -0,0 +1,97 @@ + + + + + diff --git a/uniapp/src/pages/login/login.vue b/uniapp/src/pages/login/login.vue index c963df98..2320ccd9 100644 --- a/uniapp/src/pages/login/login.vue +++ b/uniapp/src/pages/login/login.vue @@ -154,12 +154,19 @@ + diff --git a/uniapp/src/utils/util.ts b/uniapp/src/utils/util.ts index a46e05c9..2577ed7f 100644 --- a/uniapp/src/utils/util.ts +++ b/uniapp/src/utils/util.ts @@ -93,3 +93,34 @@ export function objectToQuery(params: Record): string { } return query.slice(0, -1) } + +/** + * @description 组合异步任务 + * @param { string } task 异步任务 + */ + +export function series(...task: Array<(_arg: any) => any>) { + return function (): Promise { + return new Promise((resolve, reject) => { + const iteratorTask = task.values() + const next = (res?: any) => { + const nextTask = iteratorTask.next() + if (nextTask.done) { + resolve(res) + } else { + Promise.resolve(nextTask.value(res)).then(next).catch(reject) + } + } + next() + }) + } +} + +/** + * @description 添加单位 + * @param {String | Number} value 值 100 + * @param {String} unit 单位 px em rem + */ +export const addUnit = (value: string | number, unit = 'rpx') => { + return !Object.is(Number(value), NaN) ? `${value}${unit}` : value +} \ No newline at end of file