用于小程序开发的页面跳转阻止
小程序开发
浏览:518 次

用于小程序开发的页面跳转阻止
随着小程序的普及,人们越来越接受小程序,这是一种轻型app。越来越多的APP将一些功能转化为小程序,利用小程序易于传播、获客成本比APP低的特点,获取更多用户,然后通过后续操作将小程序用户转化为APP用户。增加APP用户数量。
事实上,使用了许多小程序。不难发现,微信中的小程序来源几乎相同。扫描二维码并单击其他人共享的二维码
小程序传播给用户后,我们开发者能做的就是让用户在打开共享小程序后一键到达我们需要用户进入的页面,并完成各种预设行为。
因此,共享和打开小程序通常有两个要求;
一种是用户打开他人共享的小程序后,可以直接启动小程序进入主页;
一个人需要共享特定的页面并携带一些特定的参数。当用户打开它时,需要在页面中填写相关数据。
两种跳跃模式的比较分析:
首先,因为您只需要打开主页,所以您只需要以普通新用户的身份进行处理;
第二种类型:打开具有特定参数的特定页面。事实上,有很多漏洞;

主要考虑的是小程序是否需要登录(需要获取用户的头像昵称或手机号码,这需要用户手动授权才能获取信息)。
小程序的主页结构。如果主页是tabBar的形式,它与正常的页面数据传输不同,需要单独处理。
1: 以打开特定页面为例。实现页面跳转拦截处理
产品要求:用户共享不同的页面,其他用户需要能够在点击后直接跳转到相应的页面,信息显示应与共享源用户显示的信息一致
例如,要共享帖子,其他人需要打开同一帖子并共享团队游戏。打开帖子后,其他人需要在默认情况下直接进入邀请者的团队,然后让用户选择是否修改团队以加入。
只有注册用户才能进入小程序的其他页面,注册页面除外。因此,尚未在当前设备上使用小程序的用户需要先注册或登录
功能实现分析:
因为小程序中的所有操作都需要用户登录后才能登录,所以第一次打开小程序的用户需要先注册,然后将相应的参数带到相应的页面
2: 技术实现过程
方案一:直接使用微信的分享功能,将每个页面的分享路径直接设置为当前页面路径。然后用户点击并直接进入相应页面;

放弃原因:直接设置当前路径将导致跳过注册页面并直接进入目标页面。然而,缺少必要的请求参数会导致页面显示出现问题;
方案二:将所有共享页面路径设置为注册页面,注册页面获取共享数据后,注册登录成功后,将相关数据传输到相应页面。
放弃原因:注册成功后,用户将跳转到指定页面。此时,小程序的页面堆栈中只有注册页面,用户返回后会直接返回注册页面。无法进入小程序的主页和其他页面。
方案三:实际上,方案二是修改的,即用户共享的路径仍然设置为注册页面,但注册成功后,首先跳过主页,然后主页根据源是共享还是直接输入来区分是跳转还是停留在当前页面。此时,当用户进入指定页面时,因为页面堆栈中已经有一个主页,所以用户可以返回主页。
实施过程中遇到的坑:
1.由于主页的形式为tabBar,因此无法通过在地址(url:'test?Id=1')之后拼接参数来传输参数。最后,选择app。js文件定义了一个全局变量来临时存储页面数据,然后在跳转后取出数据,并清空app中的数据。js以避免影响下一个跳转。
2.你不能跳入app的onLoad方法。js,因为您已经跳转到在app中注册的主页。json,然后执行onLoad
登录.png
主页.png
3: 关键代码如下

以分享帖子为例解释一些参数
标准杆数