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 相关文章推荐
几个比较实用的JavaScript 测试及效验工具
Apr 18 Javascript
使用jquery与图片美化checkbox和radio控件的代码(打包下载)
Nov 11 Javascript
简单的前端js+ajax 购物车框架(入门篇)
Oct 29 Javascript
javascript开发随笔一 preventDefault的必要
Nov 25 Javascript
判断字符串的长度(优化版)中文占两个字符
Oct 30 Javascript
angularjs的select使用及默认选中设置
Apr 08 Javascript
vuejs使用$emit和$on进行组件之间的传值的示例
Oct 04 Javascript
javascript自定义事件功能与用法实例分析
Nov 08 Javascript
vue2.0使用swiper组件实现轮播效果
Nov 27 Javascript
vue 通过下拉框组件学习vue中的父子通讯
Dec 19 Javascript
javascript和php使用ajax通信传递JSON的实例
Aug 21 Javascript
关于微信公众号开发无法支付的问题解决
Dec 28 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版本号
2006/10/09 PHP
五个PHP程序员工具
2008/05/26 PHP
php函数间的参数传递(值传递/引用传递)
2013/09/23 PHP
ECMall支持SSL连接邮件服务器的配置方法详解
2014/05/19 PHP
ThinkPHP框架任意代码执行漏洞的利用及其修复方法
2014/07/04 PHP
php遍历数组的4种方法总结
2014/07/05 PHP
PHP简单实现文本计数器的方法
2016/04/28 PHP
thinkphp隐藏index.php/home并允许访问其他模块的实现方法
2016/10/13 PHP
PHP使用 Imagick 扩展实现图片合成,圆角处理功能示例
2019/09/09 PHP
Javascript setInterval的两种调用方法(实例讲解)
2013/11/29 Javascript
jQuery中:animated选择器用法实例
2014/12/29 Javascript
JQuery点击行tr实现checkBox选中的简单实例
2016/05/26 Javascript
Vue.js表单标签中的单选按钮、复选按钮和下拉列表的取值问题
2017/11/22 Javascript
详解vuex结合localstorage动态监听storage的变化
2018/05/03 Javascript
微信小程序视图容器(swiper)组件创建轮播图
2020/06/19 Javascript
使用nvm和nrm优化node.js工作流的方法
2019/01/17 Javascript
通过实例解析js简易模块加载器
2019/06/17 Javascript
Electron vue的使用教程图文详解
2019/07/05 Javascript
Python实现matplotlib显示中文的方法详解
2018/02/06 Python
浅谈Django的缓存机制
2018/08/23 Python
Django 配置多站点多域名的实现步骤
2019/05/17 Python
用Python画一个LinkinPark的logo代码实例
2019/09/10 Python
Win下PyInstaller 安装和使用教程
2019/12/25 Python
Python基于pillow库实现生成图片水印
2020/09/14 Python
python爬取豆瓣电影排行榜(requests)的示例代码
2021/02/18 Python
CSS3——齿轮转动关键代码
2013/05/02 HTML / CSS
英国领先的新鲜松露和最好的松露产品供应商:TruffleHunter
2019/08/26 全球购物
如何写一个Java类既可以用作applet也可以用作java应用
2016/01/18 面试题
资料员的岗位职责
2013/11/20 职场文书
银行员工辞职信范文
2014/01/20 职场文书
房屋转让协议书
2014/04/11 职场文书
学习经验演讲稿
2014/05/10 职场文书
2014年会计人员工作总结
2014/12/10 职场文书
遗嘱继承权公证书
2015/01/26 职场文书
村主任当选感言
2015/08/01 职场文书
Nginx反向代理配置的全过程记录
2021/06/22 Servers