AngularJS路由Ui-router模块用法示例


Posted in Javascript onMay 29, 2017

本文实例讲述了AngularJS路由Ui-router模块用法。分享给大家供大家参考,具体如下:

由于某些设计原因,AngularJS原生的路由模块有一些缺点,比如说不支持view的嵌套等,所以有许多社区开始自己设计路由模块,最有代表性的就是ui-route了。

ui-route是一个功能强大的路由模块,它在原生的ng-route模块上加强了其他方面的功能。

现在就开始做几个DEMO接触一下ui-route。

<!--初始页面-->
<!doctype html>
<meta charset="UTF-8">
<html>
<head>
  <link href="self.css" rel="external nofollow" rel="stylesheet">
</head>
<body >
<div ng-app="myApp">
<div><a ui-sref = "index">首页</a></div>
<div ui-view></div><!--这里是路由视图存放的地方-->
</div>
<script src="angular.min.js"></script>
<script src="angular-ui-router.js"></script>
<script src="test2.js"></script>
</body>
</html>

首先必须引用angular-ui-router.js文件。这个文件是区别于AngularJs的angular-route.js文件的。而且必须把该文件放在angular.min.js下面。

观察一下Html的body代码,可以发现有三个地方与使用原生的ng-route时的body代码不同。他们分别是ui-sref , index 以及ui-view 。先跳过,看一下如何初始化ui-route模块。

初始化ui-route模块:

var app = angular.module('myApp',['ui.router']);
app.config(["$stateProvider",function($stateProvider){
  $stateProvider
    .state("index",{
      url:'/',
      template:'<div>我是首页内容</div>'
    })
}]);

首先,和原生ng-route路由模块相似的是,必须先把ui-route注入。然后再进行具体的配置。与原生的ng-route不同的是,ui-route用state() 代替了原生的when() ,它在when(),的基础上新增了一个参数,这里是index,用以区分这部分路由对哪一个命令进行响应。

回到之前的<div><a ui-sref = "index">首页</a></div> ,大概就知道他们视图和它之间的关系了。ui-view 代替了以往的ng-view ,ui-sref 替换掉了以前的ng-href,而它也不再是指向链接,而是指向“导航”的名字。

其中的url属性可以唯一标识改路由的后续地址,用以跟后面的路由进行区分。

希望本文所述对大家AngularJS程序设计有所帮助。

Javascript 相关文章推荐
采用CSS和JS,刚好我最近有个站点要用到下拉菜单!
Jun 26 Javascript
一个对于js this关键字的问题
Jan 09 Javascript
document.body.scrollTop 值总为0的解决方法 比较常见的标准问题
Nov 30 Javascript
jquery中ajax学习笔记3
Oct 16 Javascript
jquery操作 iframe的方法
Dec 03 Javascript
封装好的js判断操作系统与浏览器代码分享
Jan 09 Javascript
javascript感应鼠标图片透明度显示的方法
Feb 24 Javascript
angularjs创建弹出框实现拖动效果
Aug 25 Javascript
JS实现回到页面顶部动画效果的简单实例
May 24 Javascript
jQuery的图片轮播插件PgwSlideshow使用详解
Aug 11 Javascript
Javascript读写cookie的实例源码
Mar 16 Javascript
微信小程序实现的picker多级联动功能示例
May 23 Javascript
Angular2学习教程之组件中的DOM操作详解
May 28 #Javascript
Angular2学习教程之ng中变更检测问题详解
May 28 #Javascript
Angular2使用jQuery的方法教程
May 28 #jQuery
Angular.js实现动态加载组件详解
May 28 #Javascript
利用node.js如何搭建一个简易的即时响应服务器
May 28 #Javascript
利用Angular.js编写公共提示模块的方法教程
May 28 #Javascript
Angular2入门教程之模块和组件详解
May 28 #Javascript
You might like
PHP邮件群发机实现代码
2016/02/16 PHP
php版微信公众号接口实现发红包的方法
2016/10/14 PHP
php读取出一个文件夹及其子文件夹下所有文件的方法示例
2017/06/15 PHP
Yii 框架使用Forms操作详解
2020/05/18 PHP
详解phpstorm2020最新破解方法
2020/09/17 PHP
List the Codec Files on a Computer
2007/06/18 Javascript
ext combox 下拉框不出现自动提示,自动选中的解决方法
2010/02/24 Javascript
js+xml生成级联下拉框代码
2012/07/24 Javascript
Jquery操作radio的简单实例
2014/01/06 Javascript
javascript setinterval 的正确语法如何书写
2014/06/17 Javascript
Jquery轮播效果实现过程解析
2016/03/30 Javascript
vue项目持久化存储数据的实现代码
2018/10/01 Javascript
Vue 页面状态保持页面间数据传输的一种方法(推荐)
2018/11/01 Javascript
vue实现lodop打印功能的示例
2020/11/11 Javascript
Vue实现购物小球抛物线的方法实例
2020/11/22 Vue.js
[01:51]开启你的城市传奇 完美世界城市挑战赛开始报名
2018/10/09 DOTA
[01:00] DOTA2英雄背景故事第五期之重力引力法则谜团
2020/07/16 DOTA
Python 中迭代器与生成器实例详解
2017/03/29 Python
Python浅复制中对象生存周期实例分析
2018/04/02 Python
对python程序内存泄漏调试的记录
2018/06/11 Python
Python实现将数据写入netCDF4中的方法示例
2018/08/30 Python
Python面向对象之类的定义与继承用法示例
2019/01/14 Python
Python将json文件写入ES数据库的方法
2019/04/10 Python
TensorFlow 显存使用机制详解
2020/02/03 Python
python去除删除数据中\u0000\u0001等unicode字符串的代码
2020/03/06 Python
Python3创建Django项目的几种方法(3种)
2020/06/03 Python
Python下划线5种含义代码实例解析
2020/07/10 Python
Python基于xlrd模块处理合并单元格
2020/07/28 Python
Django利用elasticsearch(搜索引擎)实现搜索功能
2020/11/26 Python
阿根廷在线宠物商店:Puppis
2018/03/23 全球购物
DTD的含义以及作用
2014/01/26 面试题
人力资源主管岗位职责
2014/01/29 职场文书
社区母亲节活动方案
2014/03/05 职场文书
小学生安全责任书
2014/07/25 职场文书
村主任“四风”问题个人对照检查材料思想汇报
2014/10/02 职场文书
公证书格式
2015/01/23 职场文书