Welcome toVigges Developer Community-Open, Learning,Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
374 views
in Technique[技术] by (71.8m points)

小程序怎么动态修改默认的启动页?

目前遇到了一种业务场景:
1、小程序的默认启动页,设置为页面A,当用户没有登录时,进入页面A,因为此时没有token,后端会返回403,前端会自动重定向到登录页
2、用户从登录页登录后,后端会返回当前用户的角色信息,前端会把角色信息存储在小程序的storage缓存里
3、如果是角色a,则跳转到页面A;如果是角色b,则跳转到页面B

如果是上面的正常流程,逻辑是没问题的,但是如果用户当前角色是b,然后进入到页面B后,进行一些操作后,把小程序切换到后台,再此进入时,小程序又会重新打开默认的启动页A,而此时其实用户是没有页面A的权限的,因为只有角色a才能访问页面A

我目前对这个问题的处理方案是在页面A进入时就用缓存里的角色信息进行判断,如果是角色a就不做处理,如果是角色b就重定向到B页面去,可是感觉这样处理很麻烦,也不规范,那么能不能动态的设置小程序的默认启动页呢,可是app.json貌似是不能动态修改的,这种问题有没有比较优雅的解决方案呢?

我能想到的另外一种方案,就是单独做一个空白的启动页C作为默认页,在这个C页面去判断用户角色,然后跳转到对应页面,但是这样也会有一个重定向的过程,体验和第一种办法差不多,有更好的办法吗?


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

A页面和B页面当作组件,在C页面显示。 通过状态判断显示A组件还是B组件


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to Vigges Developer Community for programmer and developer-Open, Learning and Share
...