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 相关文章推荐
ASP.NET jQuery 实例16 通过控件CustomValidator验证RadioButtonList
Feb 03 Javascript
js遍历td tr等html元素
Dec 13 Javascript
Jquery图片延迟加载插件jquery.lazyload.js的使用方法
May 21 Javascript
js数组去重的方法汇总
Jul 29 Javascript
javascript 四十条常用技巧大全
Sep 09 Javascript
canvas实现流星雨的背景效果
Jan 13 Javascript
JavaScript计时器用法分析【setTimeout和clearTimeout】
Jan 18 Javascript
webpack2.0搭建前端项目的教程详解
Apr 05 Javascript
浅谈Node异步编程的机制
Oct 18 Javascript
优雅的将ElementUI表格变身成树形表格的方法步骤
Apr 11 Javascript
mpvue实现小程序签到金币掉落动画(api实现)
Oct 17 Javascript
基于angular实现树形二级表格
Oct 16 Javascript
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使用curl通过代理获取数据的实现方法
2016/05/16 PHP
js TextArea的选中区域处理
2010/12/28 Javascript
jQuery EasyUI API 中文文档 DateTimeBox日期时间框
2011/10/16 Javascript
jQuery读取和设定KindEditor值的方法
2013/11/22 Javascript
学习Angularjs分页指令
2016/07/01 Javascript
jQuery UI制作选项卡(tabs)
2016/12/13 Javascript
vue params、query传参使用详解
2017/09/12 Javascript
详解jQuery中的isPlainObject()使用方法
2018/02/27 jQuery
微信小程序实现红包功能(后端PHP实现逻辑)
2018/07/11 Javascript
使用vue完成微信公众号网页小记(推荐)
2019/04/28 Javascript
ES6 let和const定义变量与常量的应用实例分析
2019/06/27 Javascript
JavaScript实现图片上传并预览并提交ajax
2019/09/30 Javascript
vue中el-input绑定键盘按键(按键修饰符)
2020/07/22 Javascript
Ant design vue中的联动选择取消操作
2020/10/31 Javascript
python随机生成指定长度密码的方法
2015/04/04 Python
python3+PyQt5+Qt Designer实现堆叠窗口部件
2018/04/20 Python
Pipenv一键搭建python虚拟环境的方法
2018/05/22 Python
对python 匹配字符串开头和结尾的方法详解
2018/10/27 Python
解决python3 requests headers参数不能有中文的问题
2019/08/21 Python
python列表切片和嵌套列表取值操作详解
2020/02/27 Python
Python生成六万个随机,唯一的8位数字和数字组成的随机字符串实例
2020/03/03 Python
python shell命令行中import多层目录下的模块操作
2020/03/09 Python
Tensorflow卷积实现原理+手写python代码实现卷积教程
2020/05/22 Python
pytorch查看通道数 维数 尺寸大小方式
2020/05/26 Python
基于PyTorch的permute和reshape/view的区别介绍
2020/06/18 Python
CSS3中伪元素::before和::after的用法示例
2017/09/18 HTML / CSS
HTML5实现自带进度条和滑块滑杆效果
2018/04/17 HTML / CSS
盖尔斯工厂店:GUESS Factory
2020/01/21 全球购物
荷兰美妆护肤品海淘网站:Beautinow(中文)
2020/11/22 全球购物
旅游网创业计划书
2014/01/31 职场文书
适用于所有创业者的创业计划书
2014/02/05 职场文书
幼儿园招生广告
2014/03/19 职场文书
学生犯错保证书
2015/05/09 职场文书
研究生学习计划书应该怎么写?
2019/09/10 职场文书
SQL Server数据定义——模式与基本表操作
2021/04/05 SQL Server
Python用any()函数检查字符串中的字母以及如何使用all()函数
2022/04/14 Python