uni-starter设置路由visitor白名单,不强制跳转登录页,但设置无效

遇到一个问题,因我做了小程序分包,导致本来想允许访客访问的页面,却总是被强制跳转到登录页面。
深层原因是设置的链接地址和common/appInit.js中373行附近的判断机制有问题导致。

本来是判断如果当前链接位于uni-starter.config.js中的visitor白名单时,不进行强制跳转到登录页,但实际情况是无效,原因是,visitor中配置的链接地址,如: pagesB/about/about,在appInit.js中,该页面实际链接是: …/…/pagesB/about/about,两者肯定是不一样的,必然被认为是不在白名单。

解决办法简单,在uni-starter.config.js中visitor的白名单,添加时这样添加:

"visitor" : [
			"/",//注意入口页必须直接写 "/"
			{"pattern":/^\/pages\/list.*/},	//支持正则表达式
			{"pattern":/^\/pagesA\/login-page.*/},
			"/pages/common/webview/webview",
			"/pages/grid/grid",
			"/pages/ucenter/ucenter",
			"/pages/ucenter/guestbook/guestbook",
			"/pagesA/about/about",
			"/pagesA/settings/settings",
			"../../pagesB/create/create",
			"../../pagesB/create/create"
		],

这里面有的加有的不加…/…/,是和你链接跳转的地址来源有关,如果无法判断,可以去common/appInit.js中375行附近,打印一下url和item,就看到两者为何被判断为不一致了,按实际情况修改即可

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值