什么是路由?

路由是AngularJS构建单页面应用的基础。
路由,就是网络数据或者请求进行分发的一个网络组件。
路由就是一个用于请求URL分发和跳转的一个应用组件,Angular中通过$routeProvider路由服务提供者进行核心的配置处理。
ng路由
ng 路由是 AngularJS 官方提供的一种简单的路由操作。
ng 路由主要分三个组成部分:路由指令、路由服务、路由服务提供者
路由指令:ng-view
ngView指令主要用于将路由指向的页面渲染到当前页面的布局中。
语法:
<ng-view [onload=”string”] [autoscroll]=”string”></ng-view>
事件:
路由视图一旦加载时,就会自动触发$viewContentLoaded 事件
路由提供者:$routeProvider
描述:
内置服务对象 内置服务对象 $routeProvider $routeProvider $routeProvider 主要用于进行路由配置 主要用于进行路由配置
该服务的使用必须依赖 该服务的使用必须依赖 该服务的使用必须依赖 ngRoute 模块,也就是项目中必须添加 模块,也就是项目中必须添加 animate-route.js
主要方法:
when( path, route); 用于在访问 path 路径时,跳转到 route 指定的视图 |-- path:路由跳转的径 |-- route:路由对象 <组件 对象 >,一个 JSON对象 otherwise(params);用于在访问不存的路径时,跳转的默认路径或者视图 |-- params:指定路径或者路由对象
内置服务<路由服务>:$route &$routeParams
$route 服务被用于进行深层超链接信息的描述, 它会监听 它会监听 $location.url() 地址并进行url 地址和指定的路由视图之间映射关系。
$routeParams服务允许开发人员可以进行路由中参数的处理。
ui路由
Angular官方提供的 ng 路由已经具备了非常强大的功能,但是在某些情况下存在一些不太好用的地方,项目中如果出现大量路由深层嵌套话官方的ng路由来处理就不是非常适合了。
第三方提供了一种强大的路由处理功能,对于路由嵌套也可以非常简单的进行处理。
ui-route:ui路由,第三方路由
ui路由,主要的功能是项目中的路由操作,和官方的ng路由相比较,它的处理方式更加简洁和易用,尤其是涉及到项目中大量路由嵌套时,使用ui路由能更加快捷方便的完成项目中路由的跳转处理。
ui-view:指令
ui -view是 ui 路由中模板页面用于数据展示的指令,可以作为标签的属性出现,同样也可以作为标签的属性出现
<div ui -viewviewviewview></div>> <ui -view></uiview>
同时可以给 ui -view 指令命名,用于在路由跳转时对应名称的 ui -view 上展示对应的数据
总结:两者区别
① ng路由实现不了多页面应用
② ui路由:更加方便地处理路由嵌套,在state()函数中进行即可。
③ngRoute 和 ui-route 相比:
$when —> $state 路由状态配置的时候
$routeParams —> $stateParams 带参数的时候的配置
$routeProvider —> $stateProvider 依赖注入的模块
<div ng-view></div> —> <div ui-view></div> 页面中绑定的指令
④ uiRoute中可以嵌套更深层次的路由,也就是路由中可以有路由(大致有两种情况:1.横向的 2.纵向的)。
(1)嵌套路由
(2)多视图路由
ngRoute中就不能嵌套更深的路由。
用代码看一下两者的区别:
ng路由:首先要配置注册 ngRoute
代码如下:
var app = angular.module(“myApp", ['ngRoute']);
app.config(["$routeProvider",function($routeProvider){
}]);
ui路由:用hello world举例子:
<!DOCTYPE html>
<html ng-app="myApp">
<head>
<meta charset="UTF-8">
<title>ui-route</title>
<script src="js/lib/angular.min.js" ></script>
<script src="js/lib/angular-ui-router.min.js"></script>
</head>
<style type="text/css">
.active{
color:red;
font-weight:bold;
}
</style>
<body>
<ul>
<li><a ui-sref="hello" ui-sref-active='active'>Hello</a></li>
<li><a ui-sref="world" ui-sref-active='active'>world</a></li>
</ul>
<div>
<ui-view></ui-view>
</div>
</body>
<script>
var app=angular.module("myApp",["ui.router"]);
/*
$stateProvider: Ui路由中的状态服务提供者
*/
app.config(["$stateProvider","$urlRouterProvider",function($stateProvider,$urlRouterProvider){
$urlRouterProvider.otherwise("/hello");
$stateProvider.state({
name:"hello",
url:"/hello",
template:"<h1>这是hello对应的内容</h1>"
}).state({
name:"world",
url:"/world",
template:"<h1>这是world跳转之后对应的内容</h1>"
});
}]);
</script>
</html>
效果如下:
这是简单的一个单页面跳转,有兴趣可以思考一下多页面应用。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# angular
# ng
# router
# ui
# ng-route和ui-router的区别
# 对angular4子路由&辅助路由详解
# Angular2之二级路由详解
# 详解Angular路由之路由守卫
# Angular4.x通过路由守卫进行路由重定向实现根据条件跳转到相应的页面(推荐)
# 详解Angular5路由传值方式及其相关问题
# 详解AngularJS1.6版本中ui-router路由中/#!/的解决方法
# angular2中router路由跳转navigate的使用与刷新页面问题详解
# Angular 4.x 路由快速入门学习
# 详解Angular路由之子路由
# 跳转
# 这是
# 主要用于
# 第三方
# 它会
# 多页
# 就会
# 尤其是
# 不太
# 就不
# 有兴趣
# 看一下
# 有两种
# 涉及到
# 好用
# 易用
# 中就
# 绑定
# 开发人员
# 组成部分
相关文章:
建站之星导航菜单设置与功能模块配置全攻略
最好的网站制作公司,网购哪个网站口碑最好,推荐几个?谢谢?
网站制作费用多少钱,一个网站的运营,需要哪些费用?
小型网站建站如何选择虚拟主机?
logo在线制作免费网站在线制作好吗,DW网页制作时,如何在网页标题前加上logo?
制作公司内部网站有哪些,内网如何建网站?
高防服务器:AI智能防御DDoS攻击与数据安全保障
整蛊网站制作软件,手机不停的收到各种网站的验证码短信,是手机病毒还是人为恶搞?有这种手机病毒吗?
如何高效利用亚马逊云主机搭建企业网站?
惠州网站建设制作推广,惠州市华视达文化传媒有限公司怎么样?
建站之星展会模版如何一键下载生成?
齐河建站公司:营销型网站建设与SEO优化双核驱动策略
如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?
一键制作网站软件下载安装,一键自动采集网页文档制作步骤?
如何选择高效响应式自助建站源码系统?
中山网站推广排名,中山信息港登录入口?
专业型网站制作公司有哪些,我设计专业的,谁给推荐几个设计师兼职类的网站?
高性价比服务器租赁——企业级配置与24小时运维服务
建站主机CVM配置优化、SEO策略与性能提升指南
c# Task.Yield 的作用是什么 它和Task.Delay(1)有区别吗
如何用PHP工具快速搭建高效网站?
如何用PHP快速搭建高效网站?分步指南
高性能网站服务器配置指南:安全稳定与高效建站核心方案
如何设计高效校园网站?
大连 网站制作,大连天途有线官网?
手机网站制作平台,手机靓号代理商怎么制作属于自己的手机靓号网站?
C#如何序列化对象为XML XmlSerializer用法
深圳企业网站制作设计,在深圳如何网上全流程注册公司?
无锡制作网站公司有哪些,无锡优八网络科技有限公司介绍?
音响网站制作视频教程,隆霸音响官方网站?
电脑免费海报制作网站推荐,招聘海报哪个网站多?
青浦网站制作公司有哪些,苹果官网发货地是哪里?
如何处理“XML格式不正确”错误 常见XML well-formed问题解决方法
小型网站制作HTML,*游戏网站怎么搭建?
香港服务器网站测试全流程:性能评估、SEO加载与移动适配优化
济南网站制作的价格,历城一职专官方网站?
网站制作中优化长尾关键字挖掘的技巧,建一个视频网站需要多少钱?
学校建站服务器如何选型才能满足性能需求?
如何在新浪SAE免费搭建个人博客?
胶州企业网站制作公司,青岛石头网络科技有限公司怎么样?
唐山网站制作公司有哪些,唐山找工作哪个网站最靠谱?
三星网站视频制作教程下载,三星w23网页如何全屏?
无锡营销型网站制作公司,无锡网选车牌流程?
建站之星如何助力企业快速打造五合一网站?
制作网站的过程怎么写,用凡科建站如何制作自己的网站?
微信推文制作网站有哪些,怎么做微信推文,急?
实现点击下箭头变上箭头来回切换的两种方法【推荐】
如何批量查询域名的建站时间记录?
魔方云NAT建站如何实现端口转发?
建站主机选哪种环境更利于SEO优化?
*请认真填写需求信息,我们会在24小时内与您取得联系。