我计划在我的大型应用程序中使用AngularJS。所以我正在寻找合适的模块来使用。
ngRoute (angular-route.js)和ui-router (angular-ui-router.js)模块之间的区别是什么?
在许多文章中,当使用ngRoute时,route是用$routeProvider配置的。然而,当与ui-router一起使用时,route使用$stateProvider和$urlRouterProvider配置。
我应该使用哪个模块来获得更好的可管理性和可扩展性?
我计划在我的大型应用程序中使用AngularJS。所以我正在寻找合适的模块来使用。
ngRoute (angular-route.js)和ui-router (angular-ui-router.js)模块之间的区别是什么?
在许多文章中,当使用ngRoute时,route是用$routeProvider配置的。然而,当与ui-router一起使用时,route使用$stateProvider和$urlRouterProvider配置。
我应该使用哪个模块来获得更好的可管理性和可扩展性?
当前回答
ngRoute是AngularJS团队开发的一个模块,它是AngularJS核心的早期部分。
ui-router是AngularJS项目之外的一个框架,用于改进和增强路由功能。
来自ui-router文档:
AngularUI路由器是AngularJS的路由框架,它允许 您可以将接口的各个部分组织到状态机中。 不像Angular核心中的$route服务,它是围绕 URL路由,UI-Router是围绕状态组织的,这可能是可选的 附加路由和其他行为。 状态被绑定到命名的,嵌套的和并行的视图,允许您 强大地管理应用程序的界面。
它们都不是更好的,你必须选择最适合你的项目。
但是,如果您计划在应用程序中使用复杂的视图,并且希望处理“$state”概念。我建议你选择ui-router。
其他回答
ngRoute是一个基本的路由库,你可以为任何路由指定一个视图和控制器。
使用ui-router,你可以指定多个视图,包括并行视图和嵌套视图。因此,如果你的应用程序需要(或将来可能需要)任何复杂的路由/视图,那么就使用ui-router。
这是AngularUI路由器最好的入门指南。
ngRoute是Angular.js团队开发的一个模块,是Angular核心的早期部分。
ui-router是Angular.js项目之外的一个框架,用于改进和增强路由功能。
AngularUI Router是AngularJS的路由框架,它允许你将接口的各个部分组织成一个状态机。不同于Angular ngRoute模块中的$route服务,它是围绕URL路由组织的,UI-Router是围绕状态组织的,状态可能会附加路由和其他行为。
https://github.com/angular-ui/ui-router
你必须知道的基本事情:ng-router使用$location.path(), ui-router使用$state.go
让我们休息一下。
1- ngRoute是由angular团队开发的,而ui-router是第三方模块。ngRoute基于路由URL实现路由,而ui-router基于应用程序的状态实现路由。3- ui-router提供ng-route提供的所有功能,并加上一些额外的功能,如嵌套状态和多个命名视图。