angularjs 路由 ngRoute tab切换

<!DOCTYPE HTML>
<html ng-app="myApp">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>无标题文档</title>
<script src="angular.min.js"></script>
<script src="http://cdn.bootcss.com/angular.js/1.2.9/angular-route.min.js"></script>
<script>

var m1 = angular.module('myApp',['ngRoute']);//引入插件angular-route.min.js

m1.config(['$routeProvider',function($routeProvider){//通过供应商初始化配置    
    $routeProvider
        .when('/aaa/:int',{//int对应123,456
            template : '<p>首页的内容</p>{{name}}', //模版加入到ng-view
            controller : 'Aaa'//改变name的值
        })
        .when('/bbb',{
            template : '<p>学员的内容</p>{{name}}',
            controller : 'Bbb'
        })
        .when('/ccc',{
            template : '<p>课程的内容</p>{{name}}',
            controller : 'Ccc'
        })
        .otherwise({//初始调用的时候走这里
            redirectTo : '/aaa'
        });    
}]);

m1.run(['$rootScope',function($rootScope){    
    $rootScope.$on('$routeChangeStart',function(event,current,pre){//routeChangeStart是ngRoute切换之前执行的,
        console.log(event);
        console.log(current);
        console.log(pre);
    });    
}]);

m1.controller('Aaa',['$scope','$location','$routeParams',function($scope,$location,$routeParams){    
    $scope.name = 'hello';
    $scope.$location = $location;    
    console.log( $routeParams );    
}]);
m1.controller('Bbb',['$scope',function($scope){
    $scope.name = 'hi';
}]);
m1.controller('Ccc',['$scope',function($scope){    
    $scope.name = '你好';    
}]);

</script>
</head>

<body>
<div ng-controller="Aaa">
   <a href="" ng-click="$location.path('aaa/123')">首页</a>  //$location.path切换路径,$location对应controller里面的$scope.$location
   <a href="" ng-click="$location.path('bbb')">学员</a>
   <a href="" ng-click="$location.path('aaa/456')">课程</a>
   <div ng-view></div>//切换布局的主题
</div>
</body>
</html>

 

posted @ 2016-08-07 23:02  无天666  阅读(2775)  评论(0编辑  收藏  举报