首页 > 代码库 > Angular路由(三)

Angular路由(三)

AngularJs ng-route路由详解

其实主要是$routeProvider搭配ng-view实现。

ng-view的实现原理,基本就是根据路由的切换,动态编译html模板。

前提

首先必须在页面引入angular.js和angular-route,注意在angular-route之前引入angular

<script type="text/javascript" src="http://www.mamicode.com/js/angular.min.js" ></script>

<script type="text/javascript" src="http://www.mamicode.com/js/angular-route.js" ></script>

 

讲解

route和ng-view要搭配使用。ng-view相当于提供了页面模板的挂载点,当切换URL进行跳转时,不同的页面模板会放在ng-view所在的位置,然后需要routeProvider配置路由的映射。

一般通过两个方法:

when():配置路径和参数;

otherwise:配置其他的路径跳转,可以想成default。

说明一下when()的第二个参数:{

controller:对应路径的控制器函数,或者名称。

template:对应路径的页面模板,会出现在ng-view处,比如“<div>###</div>”

templateUrl:对应模板的路径,比如“src/xxxx.html”

}

说明一下otherwise的参数:

redirectTo:重定向地址

具体代码如下:

控制器的代码:

var app = angular.module("app",["ngRoute"]);

app.controller("ctrl",function($scope){
})

})

路由的代码:

app.config(["$routeProvider",function($routeProvider){
$routeProvider
.when("/aa",{
templateUrl:"view/aa.html",
controller:"ctrl"
})
.when("/bb",{
templateUrl:"view/bb.html"
})
.otherwise({
redirectTo:"/aa"
})
}])

 

Angular路由(三)