AngularJS入门教程之多视图切换用法示例


Posted in Javascript onNovember 02, 2016

本文实例讲述了AngularJS多视图切换用法。分享给大家供大家参考,具体如下:

在AngularJS应用中,我们可以??tml碎片写在一个单独的文件中,然后在其他页面中?⒏枚嗡槠?釉亟?础H绻?卸喔鏊槠?募??颐腔箍梢栽诳刂破髦懈?萦没У牟僮鞫??募釉夭煌?乃槠??佣?锏角谢皇油嫉男Ч??/p>

先来看看笔者写好的一个案例吧:

AngularJS入门教程之多视图切换用法示例

这两首词实际上是两个html碎片,分别写在page1.html和page2.html。下面是这两个文件的内容:

<!--page1.html内容-->
<div>
  <p>《南乡子·登京口北固亭有怀》</p>
  <p>何处望神州?满眼风光北固楼。千古兴亡多少事,悠悠,不尽长江滚滚流。</p>
  <p>年少万兜鍪,坐断东南战未休。天下英雄谁敌手,曹刘。生子当如孙仲谋。</p>
</div>
<!--page2.html内容-->
<div>
  <p>《蝶恋花》</p>
  <p>伫倚危楼风细细,望极春愁,黯黯生天际。草色烟光残照里,无言谁会凭阑意。</p>
  <p>拟把疏狂图一醉,对酒当歌,强乐还无味。衣带渐宽终不悔,为伊消得人憔悴。</p>
</div>

接下来我们看看如何实现这两个碎片的切换。

<!DOCTYPE html>
<html ng-app="routeMod">
<head lang="en">
  <meta charset="UTF-8">
  <script type="text/javascript" src="angular-1.3.0.14/angular.js"></script>
  <script type="text/javascript" src="angular-1.3.0.14/angular-route.js"></script>
  <link type="text/css" href="css/tutorial07.css" rel="stylesheet">
  <title>tutorial07.html</title>
</head>
<body>
  <header>
    Header
  </header>
  <div id="content" ng-controller="MultiViewController">
    <div id="myView" ng-view="myView" ng-init="init()">
    </div>
    <div id="btnDiv">
      <button ng-click="prePage()">上一页</button>
      <button ng-click="nextPage()">下一页</button>
    </div>
  </div>
  <footer>
    Copyright:Rongbo_J
  </footer>
  <script>
    var routeMod = angular.module('routeMod', ['ngRoute']);
    routeMod.config(['$routeProvider',function($routeProvider){
      $routeProvider.when('/1',{
        templateUrl:'tutorial07/page1.html',
        controller:'MultiViewController'
      })
      .when('/2',{
        templateUrl:'tutorial07/page2.html',
        controller:'MultiViewController'
      })
    }])
    routeMod.controller("MultiViewController",function($scope,$log,$location){
      $scope.init = function () {
        $location.path("/1");
      }
      $scope.prePage = function () {
        $log.info("prePage");
        $location.path("/1");
      };
      $scope.nextPage = function () {
        $log.info("nextPage");
        $location.path("/2");
      };
    });
  </script>
</body>
</html>

这里我们需要用到AngularJs的路由模块ngRoute,模块代码封装在angular-route.js文件,和上节一样我们我们需要引入它。

<script type="text/javascript" src="angular-1.3.0.14/angular-route.js"></script>

然后将它注入到我们的模块中,代码如下:

var routeMod = angular.module('routeMod', ['ngRoute']);

接下来的工作是配置html碎片的访问路径,我们需要调用模块的config方法来对$routeProvider服务进行配置,代码如下:

routeMod.config(['$routeProvider',function($routeProvider){
  $routeProvider.when('/1',{
    templateUrl:'tutorial07/page1.html',
    controller:'MultiViewController'
  })
  .when('/2',{
    templateUrl:'tutorial07/page2.html',
    controller:'MultiViewController'
  })
}])

我们通过ng-view指令定义了一个视图,在控制器中调用$location.path()方法来指定在该视图中加载哪一个碎片

AngularJS源码可点击此处本站下载

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

Javascript 相关文章推荐
js实例属性和原型属性示例详解
Nov 23 Javascript
JavaScript Math.floor方法(对数值向下取整)
Jan 09 Javascript
在JavaScript中模拟类(class)及类的继承关系
May 20 Javascript
AngularJS指令中的绑定策略实例分析
Dec 14 Javascript
引入JavaScript时alert弹出框显示中文乱码问题
Sep 16 Javascript
JS实现点击下拉菜单把选择的内容同步到input输入框内的实例
Jan 23 Javascript
微信小程序HTTP接口请求封装的实现
Feb 21 Javascript
JavaScript数据结构与算法之二叉树添加/删除节点操作示例
Mar 01 Javascript
基于Vue实现电商SKU组合算法问题
May 29 Javascript
Vue实例的对象参数options的几个常用选项详解
Nov 08 Javascript
JavaScript Array.flat()函数用法解析
Sep 02 Javascript
关于IDEA中的.VUE文件报错 Export declarations are not supported by current JavaScript version
Oct 17 Javascript
js 转json格式的字符串为对象或数组(前后台)的方法
Nov 02 #Javascript
arcgis for js 修改infowindow样式的方法
Nov 02 #Javascript
快速解决js中window.location.href不工作的问题
Nov 02 #Javascript
javascript创建对象的3种方法
Nov 02 #Javascript
AngularJS入门教程之表单校验用法示例
Nov 02 #Javascript
JQuery Ajax WebService传递参数的简单实例
Nov 02 #Javascript
ASP.NET jquery ajax传递参数的实例
Nov 02 #Javascript
You might like
锁定年轻人的双倍活力 星巴克推出星倍醇即饮浓咖啡
2021/03/03 咖啡文化
Memcache 在PHP中的使用技巧
2010/02/08 PHP
php设计模式之单例模式使用示例
2014/01/20 PHP
php魔法函数与魔法常量使用介绍
2017/07/23 PHP
讲两件事:1.this指针的用法小探. 2.ie的attachEvent和firefox的addEventListener在事件处理上的区别
2007/04/12 Javascript
JavaScript字符串对象fromCharCode方法入门实例(用于把Unicode值转换为字符串)
2014/10/17 Javascript
jquery实现的Accordion折叠面板效果代码
2015/09/02 Javascript
移动手机APP手指滑动切换图片特效附源码下载
2015/11/30 Javascript
JavaScript jquery及AJAX小结
2016/01/24 Javascript
在js里怎么实现Xcode里的callFuncN方法(详解)
2016/11/05 Javascript
vue省市区三联动下拉选择组件的实现
2017/04/28 Javascript
JavaScript定义及输出螺旋矩阵的方法详解
2017/12/01 Javascript
详解vue移动端日期选择组件
2018/02/22 Javascript
vue 移动端注入骨架屏的配置方法
2019/06/25 Javascript
微信小程序scroll-view锚点链接滚动跳转功能
2019/12/12 Javascript
nodejs脚本centos开机启动实操方法
2020/03/04 NodeJs
vuex存取值和映射函数使用说明
2020/07/24 Javascript
Vue按时间段查询数据组件使用详解
2020/08/21 Javascript
[01:07:15]DOTA2-DPC中国联赛 正赛 DLG vs XG BO3 第二场 1月25日
2021/03/11 DOTA
在Python的Django框架中实现Hacker News的一些功能
2015/04/17 Python
Python OpenCV利用笔记本摄像头实现人脸检测
2020/08/20 Python
Python无头爬虫下载文件的实现
2020/04/02 Python
Python如何绘制日历图和热力图
2020/08/07 Python
解决pytorch 保存模型遇到的问题
2021/03/03 Python
纯CSS3实现圆角效果(含IE兼容解决方法)
2014/05/07 HTML / CSS
Qoo10马来西亚:全球时尚和引领潮流的购物市场
2016/08/25 全球购物
制定岗位职责的原则
2013/11/08 职场文书
财务管理个人自荐书范文
2013/11/24 职场文书
黄金搭档广告词
2014/03/21 职场文书
幼儿园六一儿童节主持节目串词
2014/03/21 职场文书
特岗教师个人总结
2015/02/10 职场文书
爱国主义影片观后感
2015/06/18 职场文书
安全生产奖惩制度
2015/08/06 职场文书
车辆挂靠协议书
2016/03/23 职场文书
Nginx Rewrite使用场景及配置方法解析
2021/04/01 Servers
pycharm debug 断点调试心得分享
2021/04/16 Python