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 相关文章推荐
网页禁用右键实现代码(JavaScript代码)
Oct 29 Javascript
Jquery对数组的操作技巧整理
Mar 25 Javascript
jQuery+easyui中的combobox实现下拉框特效
Feb 27 Javascript
javascript数组去重方法汇总
Apr 23 Javascript
jQuery实现图片渐入渐出切换展示效果
Aug 15 Javascript
常用原生js自定义函数总结
Nov 20 Javascript
Angular 4依赖注入学习教程之简介(一)
Jun 04 Javascript
jQuery实现QQ空间汉字转拼音功能示例
Jul 10 jQuery
基于vue.js中关于下拉框的值默认及绑定问题
Aug 22 Javascript
分享Angular http interceptors 拦截器使用(推荐)
Nov 10 Javascript
js数组中去除重复值的几种方法
Aug 03 Javascript
vue 内联样式style中的background用法说明
Aug 05 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
php.ini 中文版
2006/10/28 PHP
PHP获得用户使用的代理服务器ip即真实ip
2006/12/31 PHP
删除无限分类并同时删除它下面的所有子分类的方法
2010/08/08 PHP
高质量PHP代码的50个实用技巧必备(下)
2016/01/22 PHP
PHP 面向对象程序设计之类属性与类常量实现方法分析
2020/04/13 PHP
TNC vs RR BO3 第一场 2.14
2021/03/10 DOTA
Prototype 学习 Prototype对象
2009/07/12 Javascript
JS 按钮点击触发(兼容IE、火狐)
2013/08/07 Javascript
javascript类型转换示例
2014/04/29 Javascript
jQuery中prepend()方法使用详解
2015/08/11 Javascript
jQuery Dialog 打开时自动聚焦的解决方法(两种方法)
2016/11/24 Javascript
AngularJS 教程及实例代码
2017/10/23 Javascript
Vue父子组建的简单通信之控制开关Switch的实现
2018/06/04 Javascript
vuex2中使用mapGetters/mapActions报错的解决方法
2018/10/20 Javascript
如何制作一个Node命令行图像识别工具
2018/12/12 Javascript
vue中多路由表头吸顶实现的几种布局方式
2019/04/12 Javascript
vue实现多组关键词对应高亮显示功能
2019/07/25 Javascript
webpack+vue-cil 中proxyTable配置接口地址代理操作
2020/07/18 Javascript
[16:14]教你分分钟做大人:米拉娜(HEROS)
2014/11/24 DOTA
python使用pandas实现数据分割实例代码
2018/01/25 Python
matplotlib调整子图间距,调整整体空白的方法
2018/08/03 Python
Python基于opencv调用摄像头获取个人图片的实现方法
2019/02/21 Python
tensorflow自定义激活函数实例
2020/02/04 Python
利用django创建一个简易的博客网站的示例
2020/09/29 Python
Python函数调用追踪实现代码
2020/11/27 Python
用纯CSS3实现网页中常见的小箭头
2017/10/16 HTML / CSS
黄色火烈鸟:De Gele Flamingo
2019/03/18 全球购物
如何写毕业求职自荐信
2013/11/06 职场文书
党的群众路线教育实践活动个人剖析材料
2014/10/07 职场文书
优秀党务工作者先进事迹材料
2014/12/25 职场文书
关于感谢信的范文
2015/01/23 职场文书
幼儿教师小班个人总结
2015/02/05 职场文书
请客吃饭开场白
2015/06/01 职场文书
黑暗中的舞者观后感
2015/06/18 职场文书
采购部2015年度工作总结
2015/07/24 职场文书
PyCharm 安装与使用配置教程(windows,mac通用)
2021/05/12 Python