From 57aaa8b5398157def83fe9a751ecbffb32403376 Mon Sep 17 00:00:00 2001 From: linju Date: Thu, 1 Sep 2022 21:30:20 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=20iOS=E7=AB=AF=EF=BC=8C?= =?UTF-8?q?=E4=B8=80=E9=94=AE=E7=99=BB=E5=BD=95=E5=8A=9F=E8=83=BD=E5=8D=A1?= =?UTF-8?q?=E5=9C=A8showLoading=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- changelog.md | 2 + .../uni-quick-login/uni-quick-login.vue | 79 +++---------------- manifest.json | 15 ++-- package.json | 2 +- pages/ucenter/login-page/index/index.vue | 5 +- uni_modules.config.json | 4 +- .../cloudfunctions/uni-id-cf/index.js | 6 +- .../cloudfunctions/uni-id-cf/package.json | 35 ++++---- uni_modules_tools/change_after.js | 9 ++- uni_modules_tools/config.js | 56 +++++-------- uni_modules_tools/main.js | 19 ++--- 11 files changed, 86 insertions(+), 146 deletions(-) diff --git a/changelog.md b/changelog.md index 5de1c16..ee5b1fc 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,5 @@ +## 1.2.8(2022-09-01) ++ 修复 iOS端,一键登录功能卡在showLoading的问题 ## 1.2.7(2022-08-10) - 修复微信小程序绑定手机号失败的问题 ## 1.2.6(2022-06-29) diff --git a/components/uni-quick-login/uni-quick-login.vue b/components/uni-quick-login/uni-quick-login.vue index cd8662c..1dc4204 100644 --- a/components/uni-quick-login/uni-quick-login.vue +++ b/components/uni-quick-login/uni-quick-login.vue @@ -190,10 +190,8 @@ icon: 'none' }); } - uni.showLoading({mask: true}) - if (type == 'univerify' && uni.getUniverifyManager) { + if (type == 'univerify') { let univerifyManager = uni.getUniverifyManager() - console.log('是新版'); let onButtonsClickFn = async res =>{ console.log('点击了第三方登录,provider:',res, res.provider,this.univerifyStyle.buttons.list); //同步一键登录弹出层隐私协议框是否打勾 @@ -231,10 +229,11 @@ } // 订阅自定义按钮点击事件 univerifyManager.onButtonsClick(onButtonsClickFn) - // 调用一键登录弹框 - return univerifyManager.login({ - "univerifyStyle": this.univerifyStyle, - success:res=> { + // 调用一键登录弹框 + console.log(this.univerifyStyle,univerifyManager.login); + return univerifyManager.login({ + "univerifyStyle": this.univerifyStyle, + success:res=> { console.log('login success', res) this.login(res.authResult, 'univerify') }, @@ -245,16 +244,17 @@ }); }, complete(e){ + console.log(e); uni.hideLoading() // 取消订阅自定义按钮点击事件 univerifyManager.offButtonsClick(onButtonsClickFn) - } - }) - } + } + }) + } + uni.showLoading({mask: true}) uni.login({ "provider": type, "onlyAuthorize": true, //请勿直接使用前端获取的unionid或openid直接用于登录,前端的数据都是不可靠的 - "univerifyStyle": this.univerifyStyle, complete: (e) => { console.log(e); uni.hideLoading() @@ -271,63 +271,6 @@ }, fail: async (err) => { console.log(err); - // 以下代码为兼容旧版(HBuilderX3.2.13之前)HBuilderX3.2.13以上版本可直接删除 - if (type == 'univerify'&& !uni.getUniverifyManager) { - if (err.metadata && err.metadata.error_data) { - uni.showToast({ - title: t('oneClickLogin') + ":" + err.metadata.error_data, - icon: 'none' - }); - } - if (err.errMsg) { - uni.showToast({ - title: t('oneClickLogin') + ":" + err.errMsg, - icon: 'none' - }); - } - switch (err.errCode) { - case 30002: - console.log('在一键登录界面,点击其他登录方式'); - break; - case 30003: - console.log('关闭了登录'); - if (navigateBack) { - uni.navigateBack() - } - break; - case 30006: - uni.showModal({ - title: t('loginErr'), - content: err.metadata.error_data, - showCancel: false, - confirmText: t('gotIt'), - }); - break; - case "30008": - console.log('点击了第三方登录,provider:', err.provider); - //同步一键登录弹出层隐私协议框是否打勾 - let agree = (await uni.getCheckBoxState())[1].state - console.log('agree', agree); - uni.$emit('setAgreementsAgree', agree) - let { - path - } = this.univerifyStyle.buttons.list[res.index] - console.log('path', path); - if (path) { - this.to(path) - } else { - setTimeout(() => { - console.log('agree', this.agree); - this.login_before(err.provider) - }, 500) - } - break; - default: - console.log(err); - break; - } - } - // 以上代码为兼容旧版(HBuilderX3.2.13之前)HBuilderX3.2.13以上版本可直接删除 } }) }, diff --git a/manifest.json b/manifest.json index 7c48a18..1d33e10 100644 --- a/manifest.json +++ b/manifest.json @@ -1,8 +1,8 @@ { - "name": "uni-starter", - "appid": "请点击重新获取", + "name": "", + "appid": "", "description": "", - "versionName": "1.0.0", + "versionName": "", "versionCode": "100", "transformPx": false, "app-plus": { @@ -16,6 +16,8 @@ "delay": 0 }, "modules": { + "OAuth": { + } }, "distribute": { "android": { @@ -40,6 +42,10 @@ "ios": { }, "sdkConfigs": { + "oauth": { + "univerify": { + } + } } } }, @@ -69,6 +75,5 @@ "uniStatistics": { "enable": false }, - "vueVersion": "2", - "_spaceID": "" + "vueVersion": "2" } \ No newline at end of file diff --git a/package.json b/package.json index 67cdb83..90a5301 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "id": "uni-starter", "displayName": "uni-starter", - "version": "1.2.7", + "version": "1.2.8", "description": "云端一体应用快速开发基本项目模版", "keywords": [ "login", diff --git a/pages/ucenter/login-page/index/index.vue b/pages/ucenter/login-page/index/index.vue index e1750d5..332774f 100644 --- a/pages/ucenter/login-page/index/index.vue +++ b/pages/ucenter/login-page/index/index.vue @@ -125,11 +125,10 @@ @import url("../common/login-page.css"); - .quickLogin { - width: 650rpx; + .quickLogin { height: 350px; align-items: center; - justify-content: center; + justify-content: center; } .quickLoginBtn { diff --git a/uni_modules.config.json b/uni_modules.config.json index ebabb75..c1bde51 100644 --- a/uni_modules.config.json +++ b/uni_modules.config.json @@ -1,6 +1,6 @@ { "scripts": { - "preupload": "node uni_modules_tools/main.js change", - "postupload": "node uni_modules_tools/main.js recovery" + // "preupload": "node uni_modules_tools/main.js change", + // "postupload": "node uni_modules_tools/main.js recovery" } } \ No newline at end of file diff --git a/uni_modules/uni-id-cf/uniCloud/cloudfunctions/uni-id-cf/index.js b/uni_modules/uni-id-cf/uniCloud/cloudfunctions/uni-id-cf/index.js index c0560e3..393afb2 100644 --- a/uni_modules/uni-id-cf/uniCloud/cloudfunctions/uni-id-cf/index.js +++ b/uni_modules/uni-id-cf/uniCloud/cloudfunctions/uni-id-cf/index.js @@ -425,8 +425,10 @@ exports.main = async (event, context) => { await uniIdLog(loginRes) return loginRes break; - case 'loginByUniverify': - res = await uniID.loginByUniverify(params) + case 'loginByUniverify': + console.error(params) + res = await uniID.loginByUniverify(params) + console.log(999999999,res) await uniIdLog(res) break; case 'loginByApple': diff --git a/uni_modules/uni-id-cf/uniCloud/cloudfunctions/uni-id-cf/package.json b/uni_modules/uni-id-cf/uniCloud/cloudfunctions/uni-id-cf/package.json index 72ffed1..d816065 100644 --- a/uni_modules/uni-id-cf/uniCloud/cloudfunctions/uni-id-cf/package.json +++ b/uni_modules/uni-id-cf/uniCloud/cloudfunctions/uni-id-cf/package.json @@ -1,16 +1,19 @@ -{ - "name": "uni-id-cf-123", - "version": "1.0.0", - "description": "", - "main": "index.js", - "scripts": { - "test": "echo \"Error: no test specified\" && exit 1" - }, - "author": "", - "license": "ISC", - "dependencies": { - "uni-captcha": "file:../../../../uni-captcha/uniCloud/cloudfunctions/common/uni-captcha", - "uni-config-center": "file:../../../../uni-config-center/uniCloud/cloudfunctions/common/uni-config-center", - "uni-id": "file:../../../../uni-id/uniCloud/cloudfunctions/common/uni-id" - } -} +{ + "name": "uni-id-cf-123", + "version": "1.0.0", + "description": "", + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "author": "", + "license": "ISC", + "dependencies": { + "uni-captcha": "file:../../../../uni-captcha/uniCloud/cloudfunctions/common/uni-captcha", + "uni-config-center": "file:../../../../uni-config-center/uniCloud/cloudfunctions/common/uni-config-center", + "uni-id": "file:../../../../uni-id/uniCloud/cloudfunctions/common/uni-id" + }, + "extensions": { + "uni-cloud-verify": {} + } +} \ No newline at end of file diff --git a/uni_modules_tools/change_after.js b/uni_modules_tools/change_after.js index f174a41..431dc4e 100644 --- a/uni_modules_tools/change_after.js +++ b/uni_modules_tools/change_after.js @@ -1,10 +1,12 @@ const fs = require('fs'); module.exports = function(){ console.log('开始执行脚本change_after'); - let changelog = fs.readFileSync(process.cwd() + '/changelog.md', 'utf-8').split("##")[1].split("\n").slice(1).join(' '); +/* let changelog = fs.readFileSync(process.cwd() + '/changelog.md', 'utf-8').split("##")[1].split("\n").slice(1).join(' '); console.log(changelog); // 这里是修改完相关敏感配置后执行的脚本,你可以在这里自定义逻辑, - // 比如执行git提交命令 + + + // 比如执行git提交命令 var shell = require("shelljs"); var exec = shell.exec; @@ -20,5 +22,6 @@ module.exports = function(){ shell.echo('Error: Git commit failed'); shell.exit(1); } - shell.exec(`echo git success ${changelog}`); + shell.exec(`echo git success ${changelog}`); + */ } \ No newline at end of file diff --git a/uni_modules_tools/config.js b/uni_modules_tools/config.js index 1bcd47b..898d12a 100644 --- a/uni_modules_tools/config.js +++ b/uni_modules_tools/config.js @@ -1,41 +1,27 @@ // "文件路径" : {"键名":"改成什么"} { "/manifest.json": { - "appid": "请点击重新获取", - "mp-weixin" : { - "appid" : "" - }, - "app-plus" : { - "distribute" :{ - "sdkConfigs" : { - "oauth" : { - "weixin" : { - "appid" : "", - "appsecret" : "", - "UniversalLinks" : "" - }, - "univerify" : {} - }, - "share" : { - "weixin" : { - "appid" : "", - "UniversalLinks" : "" - } - }, - "geolocation" : { - "baidu" : { - "__platform__" : [ "ios", "android" ], - "appkey_ios" : "请填写地图的key", - "appkey_android" : "请填写地图的key" - } - } - } - } - }, - "_spaceID" : "", - "vueVersion" : "2" + "appid": "", + "name": "", + "versionName": "", + "mp-weixin": { + "appid": "" + }, + "vueVersion": "2", + "app-plus": { + "modules": { + "OAuth": {} + }, + "distribute": { + "sdkConfigs": { + "oauth": { + "univerify": {} + } + } + } + } }, - "/uni_modules/uni-config-center/uniCloud/cloudfunctions/common/uni-config-center/uni-id/config.json": { + "/uni_modules/uni-config-center/uniCloud/cloudfunctions/common/uni-config-center/uni-id/config.json": { "tokenExpiresIn": 7200, "app": { "oauth": { @@ -77,4 +63,4 @@ } } } -} \ No newline at end of file +} diff --git a/uni_modules_tools/main.js b/uni_modules_tools/main.js index 3fbc028..475ce97 100644 --- a/uni_modules_tools/main.js +++ b/uni_modules_tools/main.js @@ -1,12 +1,12 @@ //脚本文件目录 __dirname //运行脚本的目录,即:项目的目录 process.cwd() + //配置文件 const fs = require('fs'), Hjson = require('hjson'), - config = Hjson.rt.parse(fs.readFileSync(__dirname+'/config.js', 'utf-8')) - - + config = Hjson.rt.parse(fs.readFileSync(__dirname+'/config.js', 'utf-8')) const change_after = require('./change_after') + if(process.argv[2] == 'change'){ change(config,()=>{ console.log('脚本change已经执行成功'); @@ -26,7 +26,7 @@ function change(config,callback){ //保持原文件名先备份一份到/uni_modules_tools/copy目录下,然后再覆盖 writeFileRecursive(copyPath, fileText, function(err) { //创建目录并写入文件 if (err) { - return console.log({err}); + return console.log(err); } //改写 let HfileObj = Hjson.rt.parse(fileText) @@ -56,9 +56,11 @@ function change(config,callback){ function recovery(){ let paths = Object.keys(config) + console.log(paths); paths.forEach(path=>{ console.log(__dirname + '/copy' + path); let oldFile = fs.readFileSync(__dirname + '/copy' + path) + console.log(process.cwd() + path); fs.writeFile(process.cwd() + path, oldFile, function(err) { if (err) { console.log(err); @@ -92,15 +94,10 @@ function writeFileRecursive(path, buffer, callback) { function mergeJSON(minor, main) { for (var key in main) { if (typeof(main[key]) != 'object' ) { - console.log({key,main}); minor[key] = main[key]; }else{ - console.log(9999,{minor,key,main}); - if(minor){ - mergeJSON(minor[key], main[key]); - }else{ - console.log(minor,'不存在:'+key); - } + console.log('[',minor[key], main[key],']'); + mergeJSON(minor[key], main[key]); } } } \ No newline at end of file -- GitLab