angularjs ui-router中路由的二级嵌套


Posted in Javascript onMarch 10, 2017

关于ui-router中嵌套路由中的问题

1.首先我们的页面层次为

angularjs ui-router中路由的二级嵌套 

其中Main.html是我们的主页,我们要在main.html中对路由进行统一的管理。

main.html页面中有一个ui-view在这里将填充PageTab.html,同时被填充的PageTab.html中也有一个ui-view

这样就实现了嵌套路由。

最终效果:

angularjs ui-router中路由的二级嵌套 

当我们点击Page-1时出现的是Page1中的内容,同理点击Page-2。

下面是实际的代码:

Main.html

<!DOCTYPE html>
<html ng-app="myApp">
<head>
<meta charset="UTF-8">
<title></title>
<script src="js/angular.min.js"></script>
<script src="js/angular-ui-router.js"></script>
<script>  
</script>
</head>
<body>
<h3>Main page</h3>
  <div>
    <div ui-view></div>
  </div>
<script>
  angular.module("myApp",["ui.router"])
  .config(function($stateProvider){
    $stateProvider
    .state("PageTab",{
      url:"",
      templateUrl:"PageTab.html"
    })
    .state("PageTab.Page1",{
      url:"/Page1",
      templateUrl:"Page1.html"
    })
    .state("PageTab.Page2",{
      url:"/Page2",
      templateUrl:"Page2.html"
    })
  })
</script>
</body>
</html>

PageTab.html

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h2>PageTab</h2>
  <div>
     <span style="width:100px" ui-sref=".Page1"><a href="">Page-1</a></span>
     <span style="width:100px" ui-sref=".Page2"><a href="">Page-2</a></span>
  </div>
  <div ui-view=""></div>
</body>
</html>

Page1.html

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Page1</title>
</head>
<body>
  <h2>Page1</h2>
</body>
</html>

Page2.html

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Page2</title>
</head>
<body>
  <h2>Page2</h2>
</body>
</html>

以上是全部的页面代码,Main.html中js库需要手动导入。

下面我们重点看Main.html中对路由统一管理的部分也就是这段js代码

<script>
  angular.module("myApp",["ui.router"])
  .config(function($stateProvider){
    $stateProvider
    .state("PageTab",{
      url:"",
      templateUrl:"PageTab.html"
    })
    .state("PageTab.Page1",{
      url:"/Page1",
      templateUrl:"Page1.html"
    })
    .state("PageTab.Page2",{
      url:"/Page2",
      templateUrl:"Page2.html"
    })
  })
</script>

一共三个状态:

第一个状态

.state("PageTab",{
      url:"",
      templateUrl:"PageTab.html"
    })

在第一个中我们定义了初始状态名为PageTab,url状态为空,这时候在母版中将会在ui-view中填充PageTab.html这个页面。

第二个状态

.state("PageTab.Page1",{
      url:"/Page1",
      templateUrl:"Page1.html"
    })

我们把这个状态名字命名为PageTab.Page1 这时候的路由将会交给PageTab来处理,即在PageTab.html页面中的ui-view中填充Page1.html中的内容。同理如果state命名为PageTab.Page2 那么处理它的就会是PageTab.html这个页面。

希望本文所述对你有所帮助,angularjs ui-router中路由的二级嵌套就给大家介绍到这里了。希望大家继续关注我们的网站!想要学习angularjs可以继续关注本站。

Javascript 相关文章推荐
Juqery Html(),append()等方法的Bug解决方法
Dec 13 Javascript
jquery实现鼠标滑过小图查看大图的方法
Jul 20 Javascript
javascript移动开发中touch触摸事件详解
Mar 18 Javascript
深入探究node之Transform
Jul 20 Javascript
Nginx 配置多站点vhost 的方法
Jan 07 Javascript
bootstrap table支持高度百分比的实例代码
Feb 28 Javascript
Angular @HostBinding()和@HostListener()用法
Mar 05 Javascript
jQuery实现的电子时钟效果完整示例
Apr 28 jQuery
Vue.js + Nuxt.js 项目中使用 Vee-validate 表单校验
Apr 22 Javascript
Vue+Element-U实现分页显示效果
Nov 15 Javascript
Vue elementUI表单嵌套表格并对每行进行校验详解
Feb 18 Vue.js
vue3获取当前路由地址
Feb 18 Vue.js
AngularJS ui-router (嵌套路由)实例
Mar 10 #Javascript
微信小程序手势操作之单触摸点与多触摸点
Mar 10 #Javascript
Web纯前端“旭日图”实现元素周期表
Mar 10 #Javascript
微信小程序 MD5的方法详解及实例代码
Mar 10 #Javascript
jQuery实现扑克正反面翻牌效果
Mar 10 #Javascript
AngularJS之页面跳转Route实例代码
Mar 10 #Javascript
Angular多选、全选、批量选择操作实例代码
Mar 10 #Javascript
You might like
谈谈新手如何学习PHP
2006/12/14 PHP
PHP 定界符 使用技巧
2009/06/14 PHP
Ubuntu server 11.04安装memcache及php使用memcache来存储session的方法
2016/05/31 PHP
轻轻松松学习JavaScript
2007/02/25 Javascript
不用AJAX和IFRAME,说说真正意义上的ASP+JS无刷新技术
2008/09/25 Javascript
Javascript学习笔记8 用JSON做原型
2010/01/11 Javascript
JavaScript 轻松搞定快捷留言功能 只需一行代码
2010/04/01 Javascript
JavaScript与Image加载事件(onload)、加载状态(complete)
2011/02/14 Javascript
分享8款优秀的 jQuery 加载动画和进度条插件
2012/10/24 Javascript
JS随机生成不重复数据的实例方法
2013/07/17 Javascript
javascript在IE下trim函数无法使用的解决方法
2014/09/12 Javascript
jQuery仿gmail实现fixed布局的方法
2015/05/27 Javascript
解析ajaxFileUpload 异步上传文件简单使用
2016/12/30 Javascript
提高Web性能的前端优化技巧总结
2017/02/27 Javascript
完美实现js焦点轮播效果(一)
2017/03/07 Javascript
Angular2 http jsonp的实例详解
2017/08/31 Javascript
浅谈实现vue2.0响应式的基本思路
2018/02/13 Javascript
Python工程师面试题 与Python基础语法相关
2016/01/14 Python
Python列表list操作符实例分析【标准类型操作符、切片、连接字符、列表解析、重复操作等】
2017/07/24 Python
一个Python最简单的接口自动化框架
2018/01/02 Python
python操作xlsx文件的包openpyxl实例
2018/05/03 Python
Python对CSV、Excel、txt、dat文件的处理
2018/09/18 Python
pyqt5 实现在别的窗口弹出进度条
2019/06/18 Python
利用Pytorch实现简单的线性回归算法
2020/01/15 Python
基于Tensorflow:CPU性能分析
2020/02/10 Python
Python的赋值、深拷贝与浅拷贝的区别详解
2020/02/12 Python
python 实现字符串下标的输出功能
2020/02/13 Python
浅谈Pycharm最有必要改的几个默认设置项
2020/02/14 Python
Python 数据分析之逐块读取文本的实现
2020/12/14 Python
html5仿支付宝密码框的实现代码
2017/09/06 HTML / CSS
美国旅游网站:Tours4Fun
2017/02/17 全球购物
临床医学专业学生的自我评价分享
2013/11/21 职场文书
最新大学职业规划书范文
2013/12/30 职场文书
小学校长竞聘演讲稿
2014/05/16 职场文书
2014国庆65周年领导讲话稿(3篇)
2014/09/21 职场文书
企业党支部工作总结2015
2015/05/21 职场文书