ionic开发之登录状态判断,页面跳转
2016-10-17 15:22
591 查看
在项目开发中,经常会碰到有些页面要登录才能显示,一般都是在页面加载后,判断用户登录状态,未登录的话就跳转到登录页,但是在ionic开发的时候,如果在进入了页面后再判断登录状态跳转的话,当前这个页面会被路由自动记录到历史记录中去,这时候如果你不登录,点击返回的话,就会直接返回刚才那个需要登录才能显示的页面,那该肿么办呢?
方法一
你要是愿意的话,可以在每个需要登录的页面中做未登录情况的处理,比如展示一些默认背景图片,登录提示等等,又由于ionic的路由会缓存曾经访问过的页面,所以当你登录成功后,需要去刷新这些被缓存的页面。可以使用如下代码
javascript 代码
效果预览
123$scope.$on("$ionicView.beforeEnter",function(){//每次进入页面前判断是否登录 //判断登录代码 });
监听页面进入事件,每次页面进入都判断当前是否已登录,来判断是否加载数据。或者用$ionicHistory.clearCache() 直接清除所有缓存。
我的方法
最方便简单的方法,在.run 或者 .config 中监听state的变更事件,也就是在路由去加载每个页面之前就判断登录状态,来决定要不要加载该页面,还是跳转到登录页去。
javascript 代码效果预览12345678.run(function($ionicPlatform, $rootScope, $ionicHistory,$state) { var needLoginView = ["myclass","mycomment","myfavorite","myquestion","orderlist"];//需要登录的页面state $rootScope.$on('$stateChangeStart',function(event, toState, toParams, fromState, fromParams, options){ if(needLoginView.indexOf(toState.name)>=0&&!$rootScope.isLogin){//判断当前是否登录 $state.go("login");//跳转到登录页 event.preventDefault(); //阻止默认事件,即原本页面的加载 } })});
这样只需要把所有需要登录的页面state名写入needLoginView 数组中,每次切换页面,就会自动判断是否要跳转到登录页面,并且登录页返回直接到当前页,减少很多麻烦。
方法一
你要是愿意的话,可以在每个需要登录的页面中做未登录情况的处理,比如展示一些默认背景图片,登录提示等等,又由于ionic的路由会缓存曾经访问过的页面,所以当你登录成功后,需要去刷新这些被缓存的页面。可以使用如下代码
javascript 代码
效果预览
123$scope.$on("$ionicView.beforeEnter",function(){//每次进入页面前判断是否登录 //判断登录代码 });
监听页面进入事件,每次页面进入都判断当前是否已登录,来判断是否加载数据。或者用$ionicHistory.clearCache() 直接清除所有缓存。
我的方法
最方便简单的方法,在.run 或者 .config 中监听state的变更事件,也就是在路由去加载每个页面之前就判断登录状态,来决定要不要加载该页面,还是跳转到登录页去。
javascript 代码效果预览12345678.run(function($ionicPlatform, $rootScope, $ionicHistory,$state) { var needLoginView = ["myclass","mycomment","myfavorite","myquestion","orderlist"];//需要登录的页面state $rootScope.$on('$stateChangeStart',function(event, toState, toParams, fromState, fromParams, options){ if(needLoginView.indexOf(toState.name)>=0&&!$rootScope.isLogin){//判断当前是否登录 $state.go("login");//跳转到登录页 event.preventDefault(); //阻止默认事件,即原本页面的加载 } })});
这样只需要把所有需要登录的页面state名写入needLoginView 数组中,每次切换页面,就会自动判断是否要跳转到登录页面,并且登录页返回直接到当前页,减少很多麻烦。
相关文章推荐
- ionic ionic2进入App前判断是否登录,进入页面之前作判断,实现未登录跳转
- ionic1 跳转至某个页面之前判断用户是否登录
- iOS 开发之 点击tabbarItem添加是否跳转登录页面判断
- web 开发,个人中心每个请求,判断用户是否登录,若没有登录,则跳转到登录页面,登录成功后返回之前页面
- iOS 开发之 点击tabbarItem添加是否跳转登录页面判断
- iOS 开发之 点击tabbarItem添加是否跳转登录页面判断
- ionic开发中页面跳转隐藏ion-tabs
- 新浪微博开发flash SDK,判断登录状态不正常
- web开发,登录后跳转到之前页面
- 手机登录跳转移动端页面,判断是否移动端,要跳转的页面
- iOS 开发判断应用是否连接WiFi,并跳转到设置中的WiFi设置页面。
- 提交表单用ajax判断登录正确再跳转页面的方法二
- js判断登录与否并确定跳转页面的方法
- 判断用户是否已登录,未登录用户禁止访问任何页面或action,自动跳转到登录页面
- 判断用户是否已经登录(跳转到不同页面或者执行不同动作)
- 使用 ionic开发-页面跳转
- 提交表单用ajax判断登录正确并跳转页面的方法
- 访问页面时,判断用户是否登录,若没有登录,将跳转到登录页面(一)
- 新浪微博开发flash SDK,判断登录状态不正常
- 利用继承PageBase来判断登陆状态,没有登陆,则跳转到登陆页面