我正在为流星使用Iron路由器,并希望创建Android移动应用程序。我创建了一个看起来像WhatsApp应用程序的登录页面。用户成功登录后,我想确保当用户单击后退按钮时,用户将永远不会返回该页面。登录后的主页是用户在点击后退按钮时将查看的最后一页。因此,如果用户在主页中单击两次后退按钮,应用程序将关闭。
我希望有人理解我的问题。
我的问题是,用户注册后第一次,在两次后退点击后杀死应用程序的android功能不会发生。或者我可以复制两次后退按钮功能,所以如果我在我的主页(登录后) ,我点击两次按钮,应用程序将关闭?
答案 0 :(得分:1)
您可以通过设置仅在用户未登录时显示登录页面来实现此目的。
取决于您的应用结构,您可以在html中使用{{currentUser}}或在JS中使用Meteor.userId()。一种解决方案(简单方法)是在登录页面路由上评估Meteor.userId()(如果用户登录,则为true)。如果事实证明用户已经登录,则会重定向到主页,例如。
答案 1 :(得分:1)
Iron:路由器有你可以使用的选项{replaceState: true}
。
要完成此操作,您需要做的就是在登录后将重定向挂钩中的Router.go('home')
更改为Router.go('home', {}, {replaceState: true})
。
当您使用按下后退按钮时,主页将替换历史记录中的登录路线,用户将不会转到登录页面。