From 5693f05d62e749a311ab9c13aef488babd391393 Mon Sep 17 00:00:00 2001 From: sws <1141121512@qq.com> Date: Wed, 27 Sep 2023 11:20:01 +0800 Subject: [PATCH] =?UTF-8?q?1.=E6=94=AF=E4=BB=98=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- App.vue | 31 +++++++++++++------- pages/plugins/membershiplevelvip/buy/buy.vue | 10 ++----- pages/plugins/signin/user/user.vue | 4 +-- pages/plugins/wallet/recharge/recharge.vue | 3 +- pages/plugins/wallet/user/user.vue | 13 ++++---- 5 files changed, 31 insertions(+), 30 deletions(-) diff --git a/App.vue b/App.vue index 2047726e..8499d740 100644 --- a/App.vue +++ b/App.vue @@ -1877,18 +1877,29 @@ }); }, - // 更新url参数 - updateQueryStringParameter(uri, key, value) { - if (!value) { - return uri; - } - var re = new RegExp('([?&])' + key + '=.*?(&|$)', 'i'); - var separator = uri.indexOf('?') !== -1 ? '&' : '?'; - if (uri.match(re)) { - return uri.replace(re, '$1' + key + '=' + value + '$2'); + // 更新当前url参数 + // query:[{key:'',value:''}] + updateQueryStringParameter(query = []) { + // #ifdef H5 + let url = window.location.href; + // 判断没有参数时 + if (query.length < 1) { + //向当前url添加参数,没有历史记录 + window.history.replaceState({ path: url }, '', url); } else { - return uri + separator + key + '=' + value; + query.forEach((item) => { + let re = new RegExp('([?&])' + item.key + '=.*?(&|$)', 'i'); + let separator = url.indexOf('?') !== -1 ? '&' : '?'; + if (url.match(re)) { + url = url.replace(re, '$1' + item.key + '=' + item.value + '$2'); + } else { + url += separator + item.key + '=' + item.value; + } + }); + //向当前url添加参数,没有历史记录 + window.history.replaceState({ path: url }, '', url); } + // #endif }, }, // 初始化完成时触发(全局只触发一次) diff --git a/pages/plugins/membershiplevelvip/buy/buy.vue b/pages/plugins/membershiplevelvip/buy/buy.vue index 6ca0e22c..39dade4a 100644 --- a/pages/plugins/membershiplevelvip/buy/buy.vue +++ b/pages/plugins/membershiplevelvip/buy/buy.vue @@ -65,12 +65,12 @@ @@ -149,7 +148,7 @@ }, }); }, - order_item_pay_success_handle() { + payment_popup_event_close() { this.setData({ is_show_payment_popup: false, }); diff --git a/pages/plugins/wallet/user/user.vue b/pages/plugins/wallet/user/user.vue index 76a1d606..b2d50ebd 100644 --- a/pages/plugins/wallet/user/user.vue +++ b/pages/plugins/wallet/user/user.vue @@ -142,13 +142,14 @@ var ck = app.globalData.data.cache_page_pay_key; var pay_data = uni.getStorageSync(ck) || null; - if (pay_data) { + if (pay_data !== null) { + uni.removeStorageSync(ck); this.setData({ current: pay_data.type || 0, }); - var newurl = app.globalData.updateQueryStringParameter(window.location.href.split('?')[0], 'type', pay_data.type + ''); - //向当前url添加参数,没有历史记录 - window.history.replaceState({ path: newurl }, '', newurl); + setTimeout(() => { + app.globalData.updateQueryStringParameter([{ key: 'type', value: pay_data.type }]); + }, 200); } this.init(); }, @@ -242,9 +243,7 @@ this.setData({ current: e.currentTarget.dataset.index || 0, }); - var newurl = app.globalData.updateQueryStringParameter(window.location.href.split('?')[0], 'type', e.currentTarget.dataset.index + ''); - //向当前url添加参数,没有历史记录 - window.history.replaceState({ path: newurl }, '', newurl); + app.globalData.updateQueryStringParameter([{ key: 'type', value: e.currentTarget.dataset.index }]); }, // 滚动加载 scroll_lower(e) {