ngRoute (angular-route.js) 和 ui-router (angular-ui-router.js) 模块有什么不一样呢?

ngRoute (angular-route.js) 和 ui-router (angular-ui-router.js) 模块有什么不一样呢?html

不少文章中都有说道:当时ngRoute在路由配置时用$routeProvider,可是当ui-router路由配置时用 $stateProvider 和 $urlRouterProvider。框架

那么它们有什么不一样呢?ide

一、ngroute是用AngularJS框架的核心部分。ui

二、ui-router是一个社区库,它是用来提升完善ngroute路由功能的。url

那么我到底用哪一个,或者说,哪一个更适合可管理性和适合可扩展性?spa

ui-router路由器是一个第三方模块,功能很是强大。它支持一切正常ngroute也能够作许多额外的功能。code

下边是常见的选择ui-router路由器的因素,而不用ngRoute。router

  • UI-Router路由器容许嵌套视图(nested views)和多个命名视图(multiple named views)。这是很是有用的应用程序,你可能有较多的页面来继承其余部分。@camnpr
  • ui-router容许你有很强的类型之间的链接状态的基础上的状态名称。
     
      $stateProvider.state(state, {
          url: '/' + lastState,
          controller: 'ctrl.' + state,
          templateUrl: '/views/' + path + '.html'
       });

    经过构建ui-sref来实现不一样的状态的连接到不一样的页面(或者模板)@郑州网建htm

    <a ng-repeat="camnpr in group.items" ng-show="{{camnpr.show}}"ui-sref="{{camnpr.state}}">{{item.label}}</a>

    同时你的路由能够访问动态建立的连接blog

  • states容许你经过$statsParams来轻松的传递信息,容许不一样的信息不一样的states的map格式。

综上所述,angular-ui-router是一个功能更强大,更轻松配置项目的一个模块库,是ngRouter的升级版!

纯属转载笔记,若有侵权请告知!

相关文章
相关标签/搜索