SPA 单一页面应用程序
特点:
不产生页面跳转
把若干个功能集成到一个页面
动态生成数据,通过ajax获取数据
增强用户体验
提升性能
实现原理: 通过锚点的跳转
实现过程:
1.监听hashchange事件,当hash改变的时候获取hash= location.hash
2.将hash作为请求的参数传递给请求地址 >> url = url?hash=hash
3.服务器处理请求,并返回数据
4.前端获得数据后渲染数据
angular-route
angular-route是一个单独的模块,在创建模块时需要引入路由的依赖
var app = app.module('app',['ngRoute'])
配置路由:
app.config(['$routeProvider',function($routeProvider){
$routeProvider.when('/index',{
template: 模板
templateUrl: 外部引入的模板文件 和template不一起使用
controller: 路由对应的控制器
redirectTo:跳转的路由
})
.when('/body/:id,{
可通过 :id匹配不一样的路由,
通过$routeParams获取id 也可以获取到url地址?之后的参数 ,获取到之后是一个对象,(key:value)形式。
})
.otherwise({
redirectTo: ‘/’ //当以上路由都不匹配的时候,直接跳转到 '/' 。
})
}])