ngRoute (angular-route.js) 和 ui-router (angular-ui-router.js) 模块有什么不同呢?
ngRoute (angular-route.js) 和 ui-router (angular-ui-router.js) 模块有什么不同呢?
很多文章中都有说道:当时ngRoute在路由配置时用$routeProvider,但是当ui-router路由配置时用 $stateProvider 和 $urlRouterProvider。
那么它们有什么不同呢?
1、ngroute是用AngularJS框架的核心部分。
2、ui-router是一个社区库,它是用来提高完善ngroute路由功能的。
那么我到底用哪个,或者说,哪个更适合可管理性和适合可扩展性?
ui-router路由器是一个第三方模块,功能非常强大。它支持一切正常ngroute也可以做许多额外的功能。
下边是常见的选择ui-router路由器的因素,而不用ngRoute。
- UI-Router路由器允许嵌套视图(nested views)和多个命名视图(multiple named views)。这是非常有用的应用程序,你可能有较多的页面来继承其他部分。@camnpr
- ui-router允许你有很强的类型之间的连接状态的基础上的状态名称。
$stateProvider.state(state, {
url: '/' + lastState,
controller: 'ctrl.' + state,
templateUrl: '/views/' + path + '.html'
});通过构建ui-sref来实现不同的状态的链接到不同的页面(或者模板)
<a ng-repeat="camnpr in group.items" ng-show="{{camnpr.show}}"ui-sref="{{camnpr.state}}">{{item.label}}</a>同时你的路由可以访问动态创建的链接
- states允许你通过$statsParams来轻松的传递信息,允许不同的信息不同的states的map格式。
综上所述,angular-ui-router是一个功能更强大,更轻松配置项目的一个模块库,是ngRouter的升级版!
ngRoute (angular-route.js) 和 ui-router (angular-ui-router.js) 模块有什么不同呢?的更多相关文章
- angular route 与 django urls 冲突怎么解决?
app.js var app = angular.module('app', [ 'ngResource', 'ngRoute', // 'ui.bootstrap', // 'ngResource' ...
- [Web UI]对比Angular/jQueryUI/Extjs:没有一个框架是万能的
Angular不能做什么?对比Angular/jQueryUI/Extjs 框架就好比兵器,你得明白你手里拿的是屠龙刀还是倚天剑,刀法主要是砍,剑法主要是刺.对于那些职业喷子和脑残粉,小僧送你们两个字 ...
- Atitit. js mvc 总结(2)----angular 跟 Knockout o99 最佳实践
Atitit. js mvc 总结(2)----angular 跟 Knockout o99 最佳实践 1. 框架 angular 跟Knockout 1 2. 2. 简单的列表绑定:Knockou ...
- 关于Iscroll.js 的滑动和Angular.js路由冲突问题
Iscroll主要应用于app移动端开发. 主要代码: window.onload=function(){ var myIscroll=new IScroll(".headerNav&quo ...
- [从 0 开始的 Angular 生活]No.38 实现一个 Angular Router 切换组件页面(一)
前言 今天是进入公司的第三天,为了能尽快投入项目与成为团队可用的战力,我正在努力啃官方文档学习 Angular 的知识,所以这一篇文章主要是记录我如何阅读官方文档后,实现这个非常基本的.带导航的网页应 ...
- 集成 Kendo UI for Angular 2 控件
伴随着 Angular 2 的正式 release,Kendo UI for Angular 2 的第一批控件已经发布了,当前是 Beta 版本,免费使用. 官方站点:Kendo UI for Ang ...
- Kendo UI for Angular 2 控件
Kendo UI for Angular 2 控件 伴随着 Angular 2 的正式 release,Kendo UI for Angular 2 的第一批控件已经发布了,当前是 Beta 版本,免 ...
- angular.js前端分层开发(页面和js代码分离,并将js代码分层)
一. 抽取模块成base.js文件// 定义模块: var app = angular.module("eshop",['pagination']); 二. 抽取服务成brandS ...
- Angular build Error:In this configuration Angular requires Zone.js
Angular cli 运行 build后打开生成的index.html报错:In this configuration Angular requires Zone.js 生成代码如下: ng bui ...
- [译]基于Vue.js的10个最佳UI框架,用于构建移动应用程序
原文查看10 Best Vue.js based UI Frameworks for Building Mobile Apps 如果您期待使用Vue.js构建移动应用程序,那么您可以选择许多可用的UI ...
随机推荐
- 「 HDU P3555 」 Bomb
# 题目大意 给出 $\text{T}$ 个数,求 $[1,n]$ 中含 ‘49’ 的数的个数. # 解题思路 求出不含 '49' 的数的个数,用总数减去就是答案. 数位 $DP$,用记忆化来做. 设 ...
- Daydreaming Stockbroker(2016 NCPC 贪心)
题目: Gina Reed, the famous stockbroker, is having a slow day at work, and between rounds of solitaire ...
- springBoot启动及发布
1.在项目编辑器(IDEA)中启动 运行springBoot项目Application类中main方法,这两个按钮都可以.如下图: 当然还有我们配置的启动按钮,这是最常用的启动方式,不再赘述,如下图: ...
- Centos7配置ThinkPHP5.0完整过程(二)
接上篇<Centos7配置ThinkPHP5.0完整过程(一)>,开始配置PHP环境 安装php sudo yum install php -y 安装扩展程序 sudo yum insta ...
- 总结在Linux终端中进行算术运算的6种方式
1.使用bash 使用双括号可以像C语言一样直接使用运算符进行计算. +)) a=$((*)) echo $a b=$(($a-)) echo $b d=$(($b/)) echo $d e=$(($ ...
- js中防止输入为空,或者为字母
function checkNum(){ var num1=document.getElementById("num1").value; var num2=document.get ...
- NYOJ2 括号配对问题
括号配对问题 时间限制:3000 ms | 内存限制:65535 KB 难度:3 描述 现在,有一行括号序列,请你检查这行括号是否配对. 输入 第一行输入一个数N(0<N<=1 ...
- Choose and divide
The binomial coefficient C(m, n) is defined as C(m, n) = m! (m − n)! n! Given four natural numbers p ...
- HDU——1787 GCD Again
题意: 在一次acm竞赛之后,你花了一些时间去思考和尝试解决那些未解决的问题吗? 不知道?哦,当你想成为“大牛”的时候,你就必须这样做. 现在你会发现,这个问题是如此熟悉: 两个正整数a和b的最大GC ...
- HDU——1576 A/B
A/B Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submis ...