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仿淘宝京东多条件筛选可自行结合ajax加载示例
Aug 28 Javascript
JS实现的一个简单的Autocomplete自动完成例子
Apr 16 Javascript
JS实现根据当前文字选择返回被选中的文字
May 21 Javascript
推荐9款炫酷的基于jquery的页面特效
Dec 07 Javascript
js获取当前日期前七天的方法
Feb 28 Javascript
jquery实现简单的轮换出现效果实例
Jul 23 Javascript
js实现人才网站职位选择功能的方法
Aug 14 Javascript
jQuery-1.9.1源码分析系列(十)事件系统之事件体系结构
Nov 19 Javascript
记一次vue-webpack项目优化实践详解
Feb 17 Javascript
微信小程序学习笔记之表单提交与PHP后台数据交互处理图文详解
Mar 28 Javascript
小程序封装wx.request请求并创建接口管理文件的实现
Apr 29 Javascript
浅谈vue异步数据影响页面渲染
Oct 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 批量替换html标签的实例代码
2013/11/26 PHP
简单概括PHP的字符串中单引号与双引号的区别
2016/05/07 PHP
Thinkphp实现站点静态化的方法详解
2017/03/21 PHP
PHP使用file_get_contents发送http请求功能简单示例
2018/04/29 PHP
JavaScript实现页面滚动图片加载(仿lazyload效果)
2011/07/22 Javascript
利用JS自动打开页面上链接的实现代码
2011/09/25 Javascript
js querySelector和getElementById通过id获取元素的区别
2012/04/20 Javascript
javascript闭包入门示例
2014/04/30 Javascript
浅析javascript中function 的 length 属性
2014/05/27 Javascript
JS+DIV+CSS实现的经典标签切换效果代码
2015/09/14 Javascript
详解JavaScript基于面向对象之创建对象(1)
2015/12/10 Javascript
vue.js初学入门教程(2)
2016/11/07 Javascript
Vue调用后端java接口的实例代码
2019/10/28 Javascript
使用nodeJS中的fs模块对文件及目录进行读写,删除,追加,等操作详解
2020/02/06 NodeJs
JavaScript实现五子棋小游戏
2020/10/26 Javascript
如何实现小程序与小程序之间的跳转
2020/11/04 Javascript
python最长回文串算法
2018/06/04 Python
Python Numpy:找到list中的np.nan值方法
2018/10/30 Python
python实现逐个读取txt字符并修改
2018/12/24 Python
python实现获取单向链表倒数第k个结点的值示例
2019/10/24 Python
Python3实现监控新型冠状病毒肺炎疫情的示例代码
2020/02/13 Python
日本最大级玩偶手办购物:あみあみ Amiami
2018/04/23 全球购物
俄罗斯最大的隐形眼镜销售网站:Ochkov.Net
2021/02/07 全球购物
经典c++面试题五
2014/12/17 面试题
介绍一下mysql的日期和时间函数
2013/03/28 面试题
程序员经常用到的UNIX命令
2015/04/13 面试题
会计电算化专业毕业生推荐信
2013/12/24 职场文书
我的大学生活职业生涯规划
2014/01/02 职场文书
粗加工管理制度
2014/02/04 职场文书
青春飞扬演讲稿
2014/09/11 职场文书
工伤事故赔偿协议书(标准)
2014/09/29 职场文书
先进基层党组织材料
2014/12/25 职场文书
体育个人工作总结
2015/02/09 职场文书
mysql字符串截取函数小结
2021/04/05 MySQL
MySQL命令行操作时的编码问题详解
2021/04/14 MySQL
Mysql忘记密码解决方法
2022/02/12 MySQL