Form表单提交会导致页面之间的切换,没法实现单页应用
Ajax请求不会留下History记录(在后台管理系统,没有后台历史记录还可以) ,但在网络型应用或门户型应用(用户没有办法给改页面加标签或分享出去) ajax的SEO(搜索引擎优化)问题
2-2 BookStore的例子
$routeProvider 是angularJS自身提供的路由机制,通过它来进行路由配置
angularJS1.2以后,进行了模块化切分,使用$routeProvider 配置路由。需要引入angular-route.js 文件
angularJs提供的该$routeProvider的问题是没有办法进行深层次嵌套路由(例chapter02-04) 的 UIRoute3.html 用angularJS的 $routeProvide 无法实现
第三方的 ui-router(angular-ui.github.io)
UI-Router提供的机制实现深层次的嵌套
在主页面引入angular-ui-router.js
使用 ui-view 指令
$stateProvider , $urlRouterProvider
对以上解释
行3配置,其他所有的路径都跳转到 /index 地址
var routerApp = angular.module('routeApp',['ui.router']) ; //定义依赖
routerApp.config(function($stateProvider,$urlRouterProvider) {
$urlRouterProvider.otherwise('/index');
$stateProvider
.state('index',{
url:'index',
view:{
'':{
templateUrl:'tpls3:/index3.html'
},
'topbar@index':{
templateUrl:'tpls3:/topbar.html'
},
'main@index':{
templateUrl:'tpls3:/home.html'
}
}
})
})