小程序二级页面分享 小程序分享先跳转至首页再跳转至详情页 小程序分享空白页问题

业务需求场景分析

小程序分享二级页面时,
1、先进入首页再跳转至二级页面;
2、对于还没有经过微信授权的新用户,先经过授权,再跳转至首页、然后跳转至目标页面

实现过程分析

不想看我啰嗦可以跳过,直接看代码!_

由于直接分享二级页面没有返回按钮,借鉴其他网站,先跳转一级页面,再跳转至目标页面,在此项目中,我们是跳转至首页,点击返回,用户可以看到所有TAB页面。
首先,在二级分享页面的share事件中,path路径先改为一级页面,比如我的项目是先跳转至首页(index页面),记得将二级页面参数附上。
然后,在index页面中,如果发现在onload事件中发现有你的目标页面传过来的参数,
1、判断onload事件中是否有你的目标页面传过来的参数,如果没有,则不进行任何操作;
2、如果有目标页面传参,则将次参数缓存起来备用(便于未授权的用户拿到此参数,如无需做顶部需求中第二条,则无需此操作);
3、判断当前用户是否经过授权,我的项目是判断是否存在memberId,如果存在memberId,则直接跳转至二级目标页面,将onload拿到的参数,传过去即可;
4、如果是未经授权的新用户,则当用户点击分享链接时,先跳转至login页面,在授权成功后的事件中:取出我们第二步中缓存的数据,
如果该数据不为空,则直接跳转至目标页面(附带参数);
如果该数据为空,则表明不是分享链接,直接跳转至首页;

如果你有更好的实现方法,欢迎指导交流……
具体代码如下:

如有疑问,欢迎交流
二级分享页面分享事件:

		onShareAppMessage(){
					title: "分享给你开心、快乐",
					path: '../index/index?shareId=123456'
				}

index页面onload事件

		onload( option ){
			//其他代码省略
			if( option.shareId != "" && option.shareId != undefined ){
				wx.setStorageSync("shareId",option.shareId )
				//此处判断是否经过微信授权,已经是我们的用户的情况
				if(memberId != "" || memberId != undefined){
					wx.navigateTo({
						//跳转至你的二级目标页面即可
			             url: "../activity/detail?shareId=" + option.shareId			
			          });
				}
			}
		}

login页面

//其他代码省略,在你授权成功后
var shareId = wx.getStorageSync("shareId")if( shareId != "" && shareId != undefined ){
			wx.navigateTo({
				//跳转至你的二级目标页面即可
	             url: "../activity/detail?shareId=" + shareId			
	          });
		}
  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

【拾光静好 微微一笑】

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值