From 8f46ad18400a02346839ac82a42c65d3e8287c6b Mon Sep 17 00:00:00 2001 From: dzq Date: Wed, 3 Dec 2025 15:55:09 +0800 Subject: [PATCH] =?UTF-8?q?fix(=E4=BC=81=E4=B8=9AID=E8=8E=B7=E5=8F=96):=20?= =?UTF-8?q?=E4=BC=98=E5=8C=96=E4=BC=81=E4=B8=9AID=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E9=80=BB=E8=BE=91=E5=B9=B6=E6=B7=BB=E5=8A=A0=E6=9C=AC=E5=9C=B0?= =?UTF-8?q?=E7=BC=93=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 添加本地缓存机制避免重复获取企业ID,优先使用参数中的cid获取企业ID,若无则使用本地缓存,最后使用默认值 --- src/pages/index/index.vue | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/src/pages/index/index.vue b/src/pages/index/index.vue index b8040f6..7decf1d 100644 --- a/src/pages/index/index.vue +++ b/src/pages/index/index.vue @@ -72,12 +72,26 @@ onLoad(async (query) => { if (query && query.scene) { const scene = decodeURIComponent(query.scene); wxParamsStore.parseScene(scene); - } - const cid = wxParamsStore.getNumberParam('cid'); + const cid = wxParamsStore.getNumberParam('cid', -1); + let corpid = uni.getStorageSync('local_corpid'); - const corpid = (await getCorpidById(cid)).data; + // 企业ID获取逻辑:根据不同的条件获取企业ID并缓存到本地 + if (cid > 0) { + // 如果存在有效的企业ID参数(cid > 0),则通过API获取对应的企业ID + corpid = (await getCorpidById(cid)).data; + // 将获取到的企业ID存储到本地缓存中 + uni.setStorageSync('local_corpid', corpid || ''); + } else if (corpid) { + // 如果本地已存在企业ID,则直接使用,无需重新获取 + // 空语句块,表示保持现有的corpid值不变 + } else { + // 如果既没有有效的cid参数,也没有本地缓存的corpid,则获取默认企业ID(cid=0) + corpid = (await getCorpidById(0)).data; + // 将默认企业ID存储到本地缓存中 + uni.setStorageSync('local_corpid', corpid || ''); + } let openid = uni.getStorageSync('local_openid'); if (!openid) {