AngularJS路由实现页面跳转实例


Posted in Javascript onMarch 03, 2017

AngularJS是一个javascript框架,通过AngularJS这个类库可以实现目前比较流行的单页面应用,AngularJS还具有双向数据绑定的特点,更加适应页面动态内容。

所谓单页面应用就是在同一个页面动态加载不同的内容,而这里的“跳转”可以理解为是局部页面的跳转。

AngularJS是通过改变location地址来实现加载不同的页面内容到指定位置,下面是一个简单应用AngularJS路由来实现页面“跳转”的实例:

使用app.config来定义不同的location地址加载不同的页面,并拥有独立的控制器;

var app = angular.module('MyApp', ['ngRoute']);
  app.config(function ($routeProvider) {
   $routeProvider
    .when('/', {  // '/'表示页面初始加载内容;
     controller: 'homeCtrl', //控制器
     templateUrl: '../view/home.html' //显示的内容
    })
    .when('/reservation',{  //表示地址结尾为reservation时加载的内容;
     controller: 'reservationCtrl',  
     templateUrl: '../view/reservation.html'
    })
  });

 使用ng-view来定义动态内容加载的位置;

<!DOCTYPE html>
<html lang="en" ng-app="MyApp">
  <head>
    <script src="../angular.js"></script>
    <script src="../angular-route.min.js"></script>
  
    <script src="../js/main.js"></script>
    <script src="../js/homeController.js"></script>
    <script src="../js/reservationController.js"></script>

    <meta charset="UTF-8">
    <title></title>
  </head>
<body>
<div ng-view>
<!-- 此处为动态加载区域 -->
</div>
</body>
</html>

 上面提到,每个页面都会有一个独立的控制器,加载页面的同时会执行控制器中的函数;

app.controller('homeCtrl',function($scope,$location){  //页面的控制函数;
  $scope.goToUrl=function(path) {    //此方法可以改变location地址;
    $location.path(path);
  }
});

  上述控制器所对应的html页面为:

<div id="header">
  <p>订餐</p>
</div>
<div class="body">
  <button ng-click="goToUrl('/reservation')" class="bigButton">帮订餐</button>
  <button ng-click="goToUrl('/showList')" class="bigButton">看订单</button>
</div>

ng-click方法为点击事件执行指定函数方法。

 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery创建一个新的节点对象(自定义结构/内容)的好方法
Jan 21 Javascript
多个checkbox被选中时如何判断是否有自己想要的
Sep 22 Javascript
javascript折半查找详解
Jan 26 Javascript
JS+CSS实现仿触屏手机拨号盘界面及功能模拟完整实例
May 16 Javascript
jQuery读取XML文件的方法示例
Feb 03 Javascript
vue与TypeScript集成配置最简教程(推荐)
Oct 17 Javascript
使用webpack搭建react开发环境的方法
May 15 Javascript
JS判断字符串是否为整数的方法--简单的正则判断
Jul 23 Javascript
详解nuxt路由鉴权(express模板)
Nov 21 Javascript
jquery.tagsinput.js实现记录checkbox勾选的顺序
Sep 21 jQuery
Vue的Options用法说明
Aug 14 Javascript
JavaScript 防盗链的原理以及破解方法
Dec 29 Javascript
vue2笔记 — vue-router路由懒加载的实现
Mar 03 #Javascript
求js数组的最大值和最小值的四种方法
Mar 03 #Javascript
jQuery控制元素隐藏和显示
Mar 03 #Javascript
jQuery插件FusionCharts实现的3D柱状图效果实例【附demo源码下载】
Mar 03 #Javascript
jQuery插件FusionCharts实现的2D饼状图效果【附demo源码下载】
Mar 03 #Javascript
angular+bootstrap的双向数据绑定实例
Mar 03 #Javascript
jQuery插件FusionCharts绘制的3D饼状图效果实例【附demo源码下载】
Mar 03 #Javascript
You might like
如何利用PHP执行.SQL文件
2013/07/05 PHP
php中照片旋转 (orientation) 问题的正确处理
2017/02/16 PHP
PHP封装的page分页类定义与用法完整示例
2018/12/24 PHP
jquery创建一个ajax关键词数据搜索实现思路
2013/02/26 Javascript
JavaScript实现的一个倒计时的类
2015/03/12 Javascript
Bootstrap每天必学之简单入门
2015/11/19 Javascript
asp.net+jquery.form实现图片异步上传的方法(附jquery.form.js下载)
2016/05/05 Javascript
关于meta viewport中target-densitydpi属性详解(推荐)
2017/08/18 Javascript
jsonp实现百度下拉框功能的方法分析
2019/05/10 Javascript
Node.js+ELK日志规范的实现
2019/05/23 Javascript
小试小程序云开发(小结)
2019/06/06 Javascript
在layer弹层layer.prompt中,修改placeholder的实现方法
2019/09/27 Javascript
详解vue-flickity的fullScreen功能实现
2020/04/07 Javascript
vue实现简易图片左右旋转,上一张,下一张组件案例
2020/07/31 Javascript
python 日期操作类代码
2018/05/05 Python
python 解压pkl文件的方法
2018/10/25 Python
Python中的引用和拷贝实例解析
2019/11/14 Python
Python chardet库识别编码原理解析
2020/02/18 Python
Python3标准库glob文件名模式匹配的问题
2020/03/13 Python
python + selenium 刷B站播放量的实例代码
2020/06/12 Python
解决Keras的自定义lambda层去reshape张量时model保存出错问题
2020/07/01 Python
Selenium及python实现滚动操作多种方法
2020/07/21 Python
python与c语言的语法有哪些不一样的
2020/09/13 Python
Linux系统下升级pip的完整步骤
2021/01/31 Python
Keras保存模型并载入模型继续训练的实现
2021/02/20 Python
html5的新玩法——语音搜索
2013/01/03 HTML / CSS
优瑞自动咖啡机官网:Jura
2018/09/29 全球购物
G-Form护具官方网站:美国运动保护装备
2019/09/04 全球购物
加拿大大码女装购物网站:Penningtons
2020/12/26 全球购物
我的applet原先好好的, 一放到web server就会有问题,为什么?
2016/05/10 面试题
.net笔试题
2014/03/03 面试题
班组长岗位职责
2014/03/03 职场文书
房屋租房协议书范本
2014/12/04 职场文书
爱的承诺书
2015/01/20 职场文书
钱学森观后感
2015/06/04 职场文书
2015暑期社会实践调查报告
2015/07/14 职场文书