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>
复制代码

 


本文转自农夫山泉别墅博客园博客,原文链接:http://www.cnblogs.com/yaowen/p/5747619.html,如需转载请自行联系原作者

相关文章
|
1月前
|
JavaScript
AngularJS中的自定义指令:创建与使用技术详解
【4月更文挑战第27天】本文详细介绍了AngularJS中自定义指令的创建与使用。通过定义指令工厂函数并注册到模块中,可以创建自定义指令,如示例中的`myCustomDirective`。指令的属性(如`restrict`、`template`、`replace`)和方法(如`link`、`scope`)可定制其行为。在HTML中使用`restrict`指定的方式(如元素、属性等)来插入指令。遵循命名规范,避免直接DOM操作,使用隔离作用域和关注重用性与扩展性,能有效提升代码质量。自定义指令是AngularJS强大功能之一,有助于实现复杂DOM操作和组件复用。
|
1月前
|
UED
深入了解 AngularJS 路由的原理和使用技巧
深入了解 AngularJS 路由的原理和使用技巧
67 0
|
移动开发 JavaScript 前端开发
|
数据安全/隐私保护
|
Web App开发 JavaScript 前端开发
AngularJS driective 封装 自动滚动插件
1.ui-smooth-scroll.js文件内容 angular.module('app') .directive('uiSmoothScroll', ['$location', '$anchorScroll', function($location, $anchorScroll)...
1126 0
|
JavaScript 前端开发 编译器