Angularjs的理解和认识
1.AngularJS的双向数据绑定 .state('app.dashboard-v1',{
url: '/dashboard-v1',templateUrl: 'tpl/app_dashboard_v1.html',resolve: load(['js/controllers/chart.js'])
})
resolve选择依赖关系的js //添加路由拦截,stateChangeStart,状态开始改变的时候执行的方法 $rootScope.$on('$stateChangeStart',function(event,toState,toParams,fromState,fromParams){
// --如果是登陆
//console.log(toState.name);
if(toState.name=='access.signin')return;
// --如果用户不存在
var user = $cookies.getObject('user');
//console.log(user);
if(!user || !user.token){
console.log('go home');
event.preventDefault();//取消默认跳转行为
$state.go("access.signin",{from:fromState.name,w:'notLogin'});//跳转到登录界面
}
else if(!localStorage.getItem('hasRouter')){
$state.go("app.dashboard-v1",w:'notLogin',user:user});//跳转到登录界面
}
});
$rootScope.$on("$stateChangeSuccess",function(evt,to,toP,from,fromP) { console.log("Success: " + message(to,fromP)); });
$rootScope.$on("$stateChangeError",fromP,err) { console.log("Error: " + message(to,fromP),err); });
//console.log($rootScope);
如果路由不存在执行的方法 var hasRouter = true;
$urlRouterProvider
.otherwise(function($injector,$location){
$location.path('/access/signin');
hasRouter = false;
});
localStorage.setItem('hasRouter',hasRouter);
3.页面跳转方法, (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |