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>
时间: 2024-10-18 08:10:33

angularjs 路由 ngRoute tab切换的相关文章

AngularJS学习笔记(三) 单页面webApp和路由(ng-route)

就我现在的认识,路由($route)这个东西(也许可以加上$location)可以说是ng最重要的东西了.因为angular目前最重要的作用就是做单页面webApp,而路由这个东西是能做到页面跳转的关键. 1.单页面webApp 为什么叫单页面webApp?因为它是单页面的....额...关键在于我们看到的不少webApp是多页面的啊,可以从一页跳到另一页.嗯,看起来是这样,不过实际上这几页实际还是一个页面,因为它们是一次性加载进来的,至于为啥会有跳转效果呢?嗯,有点儿像选项卡,嗯.其实现原理在

用angularjs做简单的tab切换

用angularjs做简单的tab切换: 页面部分 <div> <div id="tabs" ng-controller="TabsCtrl"> <ul> <li ng-repeat="tab in tabs" ng-class="{active:isActiveTab(tab.url)}" ng-click="onClickTab(tab)">{{tab.t

AngularJS路由(转)

在谈路由机制前有必要先提一下现在比较流行的单页面应用,就是所谓的single page APP.为了实现无刷新的视图切换,我们通常会用ajax请求从后台取数据,然后套上HTML模板渲染在页面上,然而ajax的一个致命缺点就是导致浏览器后退按钮失效,尽管我们可以在页面上放一个大大的返回按钮,让用户点击返回来导航,但总是无法避免用户习惯性的点后退.解决此问题的一个方法是使用hash,监听hashchange事件来进行视图切换,另一个方法是用HTML5的history API,通过pushState(

Angularjs路由需要了解的那点事

我们知道angularjs是特别适合单页面应用,为了通过单页面完成复杂的业务功能,势必需要能够从一个视图跳转到另外一个视图,也就是需要在单个页面里边加载不同的模板.为了完成这个功能angularjs为我们提供了路由服务($routeProvider). 先看下我们的示例代码,html框架页index.html <!doctype html> <html lang="en"> <head> <meta charset="UTF-8&qu

AngularJS路由系列(3)-- UI-Router初体验

本系列探寻AngularJS的路由机制,在WebStorm下开发. AngularJS路由系列包括: 1.AngularJS路由系列(1)--基本路由配置2.AngularJS路由系列(2)--刷新.查看路由,路由事件和URL格式,获取路由参数,路由的Resolve3.AngularJS路由系列(3)-- UI-Router初体验4.AngularJS路由系列(4)-- UI-Router的$state服务.路由事件.获取路由参数5.AngularJS路由系列(5)-- UI-Router的路由

AngularJS 路由

AngularJS 路由允许我们通过不同的 URL 访问不同的内容. 通过 AngularJS 可以实现多视图的单页Web应用(single page web application,SPA). 通常我们的URL形式为 http://runoob.com/first/page,但在单页Web应用中 AngularJS 通过 # + 标记 实现,例如: http://runoob.com/#/first http://runoob.com/#/second http://runoob.com/#/

AngularJS“多重路由”嵌套模块——AngularJS“路由”嵌套学习资料教程

这是小编的一些学习资料,理论上只是为了自己以后学习需要的,但是还是需要认真对待的 以下内容仅供参考,请慎重使用学习 1.AngularJS路由嵌套 Angularjs本身自带路由模块,可以满足通过不同的 URL 访问不同的内容,当然实际应用为在单页面点击不同按钮等加载不同页面 之前有关于angular-route路由的介绍,但是只能一层路由嵌套,如果需要多重嵌套就是不够用了 UI-Router作为AngularUI为开发者提供的其中实用的一个模块,根据URL状态组织和控制界面UI的渲染,不是仅仅

【转】AngularJS路由和模板

1. AngularJS路由介绍 AngularJS路由功能是一个纯前端的解决方案,与我们熟悉的后台路由不太一样.后台路由,通过不同的URL会路由到不同的控制器上(controller),再渲染(render)到页面(HTML).AngularJS的前端路由,需求提前对指定的(ng-app),定义路由规则(routeProvider),然后通过不同的URL,告诉(ng-app)加载哪个页面(HTML),再渲染到(ng-app)视图(ng-view)中. AngularJS的前端路由,虽然URL输

AngularJS路由使用案例

AngularJS路由使用案例: 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="UTF-8"> 5 <title>AngularJS路由使用案例</title> 6 <script type="text/javascript" src="../js/angular.min.js"></script&