Pārlūkot izejas kodu

微信支付返回跳转记录

wgl 4 gadi atpakaļ
vecāks
revīzija
095d70d105

+ 3 - 1
src/store/getters.js

@@ -22,4 +22,6 @@ export const common_menu_list = state => state.common_menu_list
 
 export const persion_home_model = state => state.persion_home_model
 
-export const old_relation_form_data = state => state.old_relation_form_data
+export const old_relation_form_data = state => state.old_relation_form_data
+
+export const wx_pay_back_url = state => state.wx_pay_back_url

+ 2 - 1
src/store/mutation-types.js

@@ -11,4 +11,5 @@ export const SET_REGISTER_FORM_DATA = 'SET_REGISTER_FORM_DATA'
 export const SET_APP_VERSION = 'SET_APP_VERSION'
 export const SET_COMMON_MENU_LIST = 'SET_COMMON_MENU_LIST'
 export const SET_PERSION_HOME_MODEL = 'SET_PERSION_HOME_MODEL'
-export const SET_OLD_RELATION_FORM_DATA = 'SET_OLD_RELATION_FORM_DATA'
+export const SET_OLD_RELATION_FORM_DATA = 'SET_OLD_RELATION_FORM_DATA'
+export const SET_WX_PAY_BACK_URL = 'SET_WX_PAY_BACK_URL'

+ 8 - 2
src/store/mutations.js

@@ -11,7 +11,8 @@ import {
 	setRegisterFormData,
 	setAppVersion,
 	setPersionHomeModel,
-	setOldRelationFormData
+	setOldRelationFormData,
+	setWxPayBackUrl
 } from '../utils/storage'
 
 var storage_prefix = process.env.VUE_APP_LOCAL_STORAGE_PREFIX;
@@ -81,11 +82,16 @@ const mutations = {
 		setPersionHomeModel(storage_prefix, data)
 		state.persion_home_model = data
 	},
-	
+
 	[types.SET_OLD_RELATION_FORM_DATA](state, data) {
 		setOldRelationFormData(storage_prefix, data)
 		state.old_relation_form_data = data
 	},
+
+	[types.SET_WX_PAY_BACK_URL](state, data) {
+		setWxPayBackUrl(storage_prefix, data)
+		state.wx_pay_back_url = data
+	},
 }
 
 export default mutations

+ 3 - 1
src/store/state.js

@@ -10,7 +10,8 @@ import {
 	getRegisterFormData,
 	getAppVersion,
 	getPersionHomeModel,
-	getOldRelationFormData
+	getOldRelationFormData,
+	getWxPayBackUrl
 } from '../utils/storage'
 
 var storage_prefix = process.env.VUE_APP_LOCAL_STORAGE_PREFIX;
@@ -31,6 +32,7 @@ const state = {
 	app_version: getAppVersion(storage_prefix),
 	persion_home_model: getPersionHomeModel(storage_prefix),
 	old_relation_form_data: getOldRelationFormData(storage_prefix),
+	wx_pay_back_url: getWxPayBackUrl(storage_prefix)
 }
 
 export default state

+ 4 - 0
src/utils/storage.js

@@ -97,3 +97,7 @@ export const getPersionHomeModel = (channel) => get(channel + '_persion_home_mod
 export const setOldRelationFormData = (channel, data) => set(channel + '_old_relation_form_data', data)
 
 export const getOldRelationFormData = (channel) => get(channel + '_old_relation_form_data')
+
+export const getWxPayBackUrl = (channel) => get(channel + '_wx_pay_back_url')
+
+export const setWxPayBackUrl = (channel, data) => set(channel + '_wx_pay_back_url', data)

+ 5 - 1
src/utils/wxpay.js

@@ -1,3 +1,5 @@
+import store from '$project/store'
+
 function onBridgeReady(params) {
 	window.WeixinJSBridge.invoke(
 		'getBrandWCPayRequest', {
@@ -12,7 +14,9 @@ function onBridgeReady(params) {
 			//alert(JSON.stringify(res)); // 支付取消会执行 支付成功不会
 			if (res.err_msg == 'get_brand_wcpay_request:ok') {
 				//alert("支付成功") // 不会执行
-				window.location.href = params.url
+				//window.location.href = params.url
+				//记录要回跳的url
+				store.commit('SET_WX_PAY_BACK_URL', params.url)
 			} else if (res.err_msg == "get_brand_wcpay_request:cancel") {
 				//alert("支付取消") // 会执行
 			} else {