angular-route和angular-ui-router有什么区别?

JavaScript

2020-03-09

我打算在大型应用程序中使用AngularJS。所以我正在寻找合适的模块来使用。

是什么区别(角route.js)ngRouteUI的路由器(角-UI-router.js)模块?

在许多使用ngRoute的文章中,route是使用$ routeProvider配置的但是,当与ui-router一起使用时,route是使用$ stateProvider和$ urlRouterProvider配置的

我应该使用哪个模块以获得更好的可管理性和可扩展性?

第388篇《angular-route和angular-ui-router有什么区别?》来自Winter(https://github.com/aiyld/aiyld.github.io)的站点

13个回答
宝儿L 2020.03.10

ng-View(由AngularJS团队开发)每页只能使用一次,而ui-View(第三方模块)每页只能使用多次。

ui-View 因此是最佳选择。

null 2020.03.10

1- ngRoute是由angular团队开发的,而ui-router是第3方模块。2- ngRoute根据路由URL实现路由,而ui-router根据应用程序的状态实现路由。3- ui-router提供了ng-route提供的所有功能,以及一些其他功能,例如嵌套状态和多个命名视图。

橙ぺo痕 2020.03.10

您必须了解的基本知识:ng-router使用$location.path()和ui-router使用$state.go

让我们休息所有功能。

Tom西里 2020.03.10

AngularUI Router是AngularJS的路由框架,它允许您将接口的各个部分组织到状态机中。与Angular ngRoute模块中的$ route服务围绕URL路由进行组织不同,UI-Router围绕状态进行组织,状态可以有选择地附加了路由以及其他行为。

https://github.com/angular-ui/ui-router

逆天小胖 2020.03.10

ngRoute是Angular.js团队开发的模块,该模块是Angular核心的早期部分。

ui-router是一个在Angular.js项目之外制作的框架,用于改善和增强路由功能。

LEYJim 2020.03.10

ui路由器让您的生活更轻松!您可以通过将其注入到您的应用程序中,将其添加到您的AngularJS应用程序中。

ng-route 作为核心AngularJS的一部分提供,因此它更简单,并且为您提供更少的选择...

查看此处以更好地了解ng-route:https : //docs.angularjs.org/api/ngRoute

另外,在使用它时,请不要忘记使用:ngView ..

ng-ui-router不同,但:

https://github.com/angular-ui/ui-router,但为您提供了更多选择。

Harry逆天 2020.03.10

ngRoute是一个基本的路由库,您可以在其中为任何路由指定一个视图和控制器。

使用ui-router,您可以指定多个视图,包括并行视图和嵌套视图。因此,如果您的应用程序需要(或将来可能需要)任何类型的复杂路由/视图,请继续使用ui-router。

是AngularUI路由器的最佳入门指南。

理查德阿飞 2020.03.10

通常,ui-router在状态机制上工作...可以通过一个简单的示例来理解:

假设我们有一个音乐库的大型应用程序(例如..gaana或saavan或其他任何文件)。在页面底部,您拥有一个音乐播放器,该音乐播放器在页面的所有状态之间共享。

现在,假设您只需单击一些歌曲即可播放。在这种情况下,仅该音乐播放器状态应更改,而不是重新加载整个页面。这可以通过ui-router轻松处理。

在ngRoute中,我们只是附加视图和控制器。

GO西门LEY 2020.03.10

ngRoute是AngularJS核心框架的一部分。

ui-router是创建的社区库,旨在尝试改进默认路由功能。

这是一篇有关配置/设置ui-router的好文章:

http://www.ng-newsletter.com/posts/angular-ui-router.html

猿Pro 2020.03.10

ui-router是一个第三方模块,功能非常强大。它支持常规ngRoute可以执行的所有操作以及许多其他功能。

以下是在ngRoute上选择ui-router的一些常见原因:

  • ui-router允许嵌套视图多个命名视图这对于较大的应用程序非常有用,在大型应用程序中,您的页面可能会继承自其他部分。

  • ui-router允许您基于状态名称在状态之间进行强类型链接。当您使用建立链接时,在一个位置更改url会将每个链接更新为该状态ui-sref对于可能会更改URL的大型项目非常有用。

  • There is also the concept of the decorator which could be used to allow your routes to be dynamically created based on the URL that is trying to be accessed. This could mean that you will not need to specify all of your routes before hand.

  • states allow you to map and access different information about different states and you can easily pass information between states via $stateParams.

  • You can easily determine if you are in a state or parent of a state to adjust UI element (highlighting the navigation of the current state) within your templates via $state provided by ui-router which you can expose via setting it in $rootScope on run.

In essence, ui-router is ngRouter with more features, under the sheets it is quite different. These additional features are very useful for larger applications.

More Information:

卡卡西Near 2020.03.10

如果要利用ngRoute范例中实现的嵌套视图功能,请尝试angular-route- segment-它旨在扩展ngRoute而不是替换它。

伽罗达蒙 2020.03.10

ngRoute是一个有角度的核心模块,适用于基本情况。我相信他们将在即将发布的版本中添加更强大的功能。

网址:https//docs.angularjs.org/api/ngRoute

Ui-router是一个有助于解决ngRoute问题的贡献模块。主要是嵌套/复杂视图。

网址:https//github.com/angular-ui/ui-router

ui-router和ngRoute之间的一些区别

http://www.amasik.com/angularjs-ngroute-vs-ui-router/

在此处输入图片说明

菏以飘落 2020.03.10

ngRoute是AngularJS团队开发的模块,该模块是AngularJS核心的早期组成部分。

ui-router是一个在AngularJS项目之外制作的框架,用于改善和增强路由功能。

从ui-router 文档中

AngularUI Router是AngularJS的路由框架,它允许您将接口的各个部分组织到状态机中。不同于Angular核心中的$ route服务是围绕URL路由组织的,UI-Router是围绕状态组织的,状态可以有选择地附加路由以及其他行为。

状态绑定到命名视图,嵌套视图和并行视图,从而使您可以有效地管理应用程序的界面。

它们都不是更好的选择,您将必须选择最适合您的项目。

但是,如果您打算在应用程序中使用复杂的视图,并且希望处理“ $ state”概念。我建议您选择ui-router。

问题类别

JavaScript Ckeditor Python Webpack TypeScript Vue.js React.js ExpressJS KoaJS CSS Node.js HTML Django 单元测试 PHP Asp.net jQuery Bootstrap IOS Android