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 相关文章推荐
jQuery库与其他JS库冲突的解决办法
Feb 07 Javascript
Jquery中获取iframe的代码
Jan 11 Javascript
重写javascript中window.confirm的行为
Oct 21 Javascript
Dom 学习总结以及实例的使用介绍
Apr 24 Javascript
yui3的AOP(面向切面编程)和OOP(面向对象编程)
May 01 Javascript
JavaScript中setUTCFullYear()方法的使用简介
Jun 12 Javascript
jQuery中inArray方法注意事项分析
Jan 25 Javascript
Vue2 Vue-cli中使用Typescript的配置详解
Jul 24 Javascript
Angular实现表单验证功能
Nov 13 Javascript
解决ng-repeat产生的ng-model中取不到值的问题
Oct 02 Javascript
JQuery样式与属性设置方法分析
Dec 07 jQuery
Ant Design moment对象和字符串之间的相互转化教程
Oct 27 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 生成随机验证码图片代码
2010/02/08 PHP
解析php类的注册与自动加载
2013/07/05 PHP
函数中使用require_once问题深入探讨 优雅的配置文件定义方法推荐
2014/07/02 PHP
国产PHP开发框架myqee新手快速入门教程
2014/07/14 PHP
PHP中使用数组指针函数操作数组示例
2014/11/19 PHP
PHP中异常处理的一些方法整理
2015/07/03 PHP
基于PHP常用文件函数和目录函数整理
2017/08/17 PHP
javascript 框架小结 个人工作经验
2009/06/13 Javascript
JQuery下的Live方法和$.browser方法使用代码
2010/06/02 Javascript
jQuery EasyUI API 中文文档 - EasyLoader 加载器
2011/09/29 Javascript
jQuery函数的等价原生函数代码示例
2013/05/27 Javascript
jquery Banner轮播选项卡
2016/12/26 Javascript
xmlplus组件设计系列之选项卡(Tabbar)(5)
2017/05/03 Javascript
vue中各组件之间传递数据的方法示例
2017/07/27 Javascript
JavaScript模拟实现封装的三种方式及写法区别
2017/10/27 Javascript
vue.js提交按钮时进行简单的if判断表达式详解
2018/08/08 Javascript
React Router V4使用指南(精讲)
2018/09/17 Javascript
微信小程序自定义单项选择器样式
2019/07/25 Javascript
scrapyd schedule.json setting 传入多个值问题
2019/08/07 Javascript
JS数组降维的实现Array.prototype.concat.apply([], arr)
2020/04/28 Javascript
[01:05]主宰至宝剑心之遗
2017/03/16 DOTA
[50:15]VP vs Mineski 2018国际邀请赛淘汰赛BO3 第二场 8.22
2018/08/23 DOTA
Python实现的简单发送邮件脚本分享
2014/11/07 Python
Django1.7+python 2.78+pycharm配置mysql数据库教程
2014/11/18 Python
Windows下python2.7.8安装图文教程
2016/05/26 Python
SQLite3中文编码 Python的实现
2017/01/11 Python
Python实现Smtplib发送带有各种附件的邮件实例
2017/06/05 Python
利用python实现AR教程
2019/11/20 Python
Python计算不规则图形面积算法实现解析
2019/11/22 Python
Python Json数据文件操作原理解析
2020/05/09 Python
浅谈Python3中print函数的换行
2020/08/05 Python
HTML5的革新 结构之美
2011/06/20 HTML / CSS
方太官方网上商城:销售方太抽油烟机、燃气灶、消毒柜等
2017/01/17 全球购物
法人委托书范本
2014/04/04 职场文书
政风行风评议整改方案
2014/09/15 职场文书
java基础——多线程
2021/07/03 Java/Android