ng-router是内部自带框架,uiRouter是第三方社区提供个基于ngRoute开发的第三方路由模块。
1、它们的不同之处。
1、ngRoute在路由配置时用$routeProvider。
2、ui-router路由配置时用 $stateProvider 和$urlRouterProvider。
3、ngRoute是官方路由。
4、ui-route是第三方路由。
5、ngroute是用AngularJS框架的核心部分。
6、ui-router是一个社区库,它是用来提高完善ngroute路由功能的。
7、ui-router允许嵌套视图(nested views)和多个命名视图(multiple named views)。
2、它们提供的那些服务
ng-router
1、$routeProvider–用于进行路由配置的内置服务
2、$routeParams–径性路由参数传递时使用的一个内置服务
3、ng-view–用于展示对应模板的指令(不能取名)
ui-router
1、$stateProvider–ui路由中状态的服务提供者。
2、$urlRouterProvider–用于默认访问位置的指定。
3、views–用于进行多数据展示的情况。
4、ui-view–主要进行目标视图模板的展示。
5、ui-sref–该属性主要用于替换HTML中a标签的href属性,用于指定目标路由的名称。
ui-router的使用
<div ui-view></div>
<div ui-view="status"></div>
$stateProvider .state('home', {
url: '/',
views: {
'': {
template: 'hello world'
},
'status': {
template: 'home page'
}
}
});