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 盒模型 尺寸深入理解
Dec 31 Javascript
jQuery Pagination Ajax分页插件(分页切换时无刷新与延迟)中文翻译版
Jan 11 Javascript
js中function()使用方法
Dec 24 Javascript
用jQuery与JSONP轻松解决跨域访问的问题
Feb 04 Javascript
事件委托与阻止冒泡阻止其父元素事件触发
Sep 02 Javascript
js实现select跳转功能代码
Oct 22 Javascript
JavaScript控制浏览器全屏及各种浏览器全屏模式的方法、属性和事件
Dec 20 Javascript
详解Bootstrap的iCheck插件checkbox和radio
Aug 24 Javascript
node.js版本管理工具n无效的原理和解决方法
Nov 24 Javascript
js实现列表按字母排序
Aug 11 Javascript
Vuejs通过拖动改变元素宽度实现自适应
Sep 02 Javascript
nuxt.js添加环境变量,区分项目打包环境操作
Nov 06 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 在字符串指定位置插入新字符的简单实现
2016/06/28 PHP
JavaScript 调试器简介
2009/02/21 Javascript
javascript简易缓动插件(源码打包)
2012/02/16 Javascript
JavaScript控制table某列不显示的方法
2015/03/16 Javascript
jquery中ready()函数执行的时机和window的load事件比较
2015/06/22 Javascript
JavaScript实现同一页面内两个表单互相传值的方法
2015/08/12 Javascript
jQuery实现圣诞节礼物传送(花式轮播)
2016/12/25 Javascript
微信小程序 动态传参实例详解
2017/04/27 Javascript
jQuery操作DOM_动力节点Java学院整理
2017/07/04 jQuery
php register_shutdown_function函数详解
2017/07/23 Javascript
JavaScript 完成注册页面表单校验的实例
2017/08/19 Javascript
详解AngularJS1.x学习directive 中‘&amp; ’‘=’ ‘@’符号的区别使用
2017/08/23 Javascript
React styled-components设置组件属性的方法
2018/08/07 Javascript
Vue中常用rules校验规则(实例代码)
2019/11/14 Javascript
vue点击按钮动态创建与删除组件功能
2019/12/29 Javascript
vue如何实现动态加载脚本
2020/02/05 Javascript
JavaScript随机数的组合问题案例分析
2020/05/16 Javascript
python基础教程之popen函数操作其它程序的输入和输出示例
2014/02/10 Python
python使用PyFetion来发送短信的例子
2014/04/22 Python
Python循环语句中else的用法总结
2016/09/11 Python
python删除服务器文件代码示例
2018/02/09 Python
Python OpenCV处理图像之图像直方图和反向投影
2018/07/10 Python
Python实现定时执行任务的三种方式简单示例
2019/03/30 Python
什么是python的函数体
2020/06/19 Python
如何利用python正则表达式匹配版本信息
2020/12/09 Python
英国版MAC彩妆品牌:Illamasqua
2018/04/18 全球购物
皮姆斯勒语言学习:Pimsleur Language Programs
2018/06/30 全球购物
你所在的项目是如何确定版本号的
2015/12/28 面试题
医大实习自我鉴定
2013/12/07 职场文书
创建精神文明单位实施方案
2014/03/08 职场文书
聚美优品广告词改编
2014/03/14 职场文书
关于党风廉政建设宣传教育月的活动总结!
2019/08/08 职场文书
Python类方法总结讲解
2021/07/26 Python
Python torch.flatten()函数案例详解
2021/08/30 Python
python字符串拼接.join()和拆分.split()详解
2021/11/23 Python
Python+腾讯云服务器实现每日自动健康打卡
2021/12/06 Python