AngularJS路由切换实现方法分析


Posted in Javascript onMarch 17, 2017

本文实例讲述了AngularJS路由切换实现方法。分享给大家供大家参考,具体如下:

之前有在服务器端接触到angular路由切换,今天想在本地实现路由,捣鼓半天终于成功了,特把步骤整理分享下,免得大家走弯路!

1.首先引入angular.min.js和angular-route.min.js

2.然后我们来写框架index.html,index里面装的是所有页面都有的nav导航和footer页脚(我这个demo里只有nav),模板文件page1.html,page2.html,也就是中间路由切换的部分

index.html代码如下:

<!DOCTYPE html>
<html>
<head>
  <title>angular js 路由</title>
  <script type="text/javascript" src="js/angular.min.js"></script>
  <script type="text/javascript" src="js/angular-route.min.js"></script>
  <script type="text/javascript" src="js/controllers.js"></script>
  <style type="text/css">
    li{list-style-type: none;
      float: left;
      margin-right: 25px;
    }
  </style>
</head>
<body ng-app="RoutingApp">
  <ul>
    <li><a href="#page1" rel="external nofollow" >go page 1</a></li>
    <li><a href="#page2" rel="external nofollow" >go page 2</a></li>
    <li><a href="#other" rel="external nofollow" >to other page</a></li>
  </ul>
  <div ng-view></div>
</body>
</html>

page1.html代码如下:

<p>this is page 1</p>

page2.html代码如下:

<p>this is page 2</p>

3.其次来写controllers.js,说明见注释

angular.module("RoutingApp", ["ngRoute"]) //定义路由 在应用模块RoutingApp里注入ngRoute
  .config(['$routeProvider', function ($routeProvider) { //在路由模块里面的.config()方法里面注入了$routeProvider
    $routeProvider
      .when("/page1", { //templateUrl: 表示路由跳转的view模板
        templateUrl: "page1.html"
      })
      .when("/page2", {
        templateUrl: "page2.html"
      })
      .otherwise({
        redirectTo: "/"
      });
  }]);

4.要想实现angular路由的本地切换必须要在本地有个服务器的环境,我是用Python搭建的,很简单的呦!新建一个python文件拷贝以下代码

import http.server
def start_server(port=8000, bind="", cgi=False):
  if cgi==True:
    http.server.test(HandlerClass=http.server.CGIHTTPRequestHandler, port=port, bind=bind)
  else:
    http.server.test(HandlerClass=http.server.SimpleHTTPRequestHandler, port=port, bind=bind)
start_server() #If you want cgi, set cgi to True e.g. start_server(cgi=True)

5.在桌面上新建一个叫lemonServer的文件夹,并把所有文件扔进去,得到如下文件目录

AngularJS路由切换实现方法分析

6.运行python文件结果如下,这段代码的意思是,把python文件所在的目录搭建成一个简单的服务器

AngularJS路由切换实现方法分析

7.打开浏览器输入localhost:8000/index.html就可以看到刚才建立的index.html了,点击链接完成路由操作,是不是很简单呢!

AngularJS路由切换实现方法分析

希望本文所述对大家AngularJS程序设计有所帮助。

Javascript 相关文章推荐
IE6/7 and IE8/9/10(IE7模式)依次隐藏具有absolute或relative的父元素和子元素后再显示父元素
Jul 31 Javascript
jquery parent和parents的区别分析
Oct 02 Javascript
jquery图片轮播插件仿支付宝2013版全屏图片幻灯片
Apr 03 Javascript
JS实现控制表格行内容垂直对齐的方法
Mar 30 Javascript
jquery动态导航插件dynamicNav用法实例分析
Sep 06 Javascript
JS留言功能的简单实现案例(推荐)
Jun 23 Javascript
vue与原生app的对接交互的方法(混合开发)
Nov 28 Javascript
详释JavaScript执行环境与执行栈
Apr 02 Javascript
vue项目中将element-ui table表格写成组件的实现代码
Jun 12 Javascript
JS检索下拉列表框中被选项目的索引号(selectedIndex)
Dec 17 Javascript
JavaScript设计模式--桥梁模式引入操作实例分析
May 23 Javascript
vant组件中 dialog的确认按钮的回调事件操作
Nov 04 Javascript
js判断是否是手机页面
Mar 17 #Javascript
Angular组件化管理实现方法分析
Mar 17 #Javascript
Bootstrap表单制作代码
Mar 17 #Javascript
Bootstrap 过渡效果Transition 模态框(Modal)
Mar 17 #Javascript
使用vue.js编写蓝色拼图小游戏
Mar 17 #Javascript
Vue.js实现一个漂亮、灵活、可复用的提示组件示例
Mar 17 #Javascript
javascript 动态生成css代码的两种方法
Mar 17 #Javascript
You might like
PHP详细彻底学习Smarty
2008/03/27 PHP
PHP 面向对象详解
2012/09/13 PHP
几道坑人的PHP面试题 试试看看你会不会也中招
2014/08/19 PHP
在Mac OS上编译安装Nginx+PHP+MariaDB开发环境的教程
2016/02/23 PHP
php实现在线考试系统【附源码】
2018/09/18 PHP
利用PHP内置SERVER开启web服务(本地开发使用)
2020/01/22 PHP
php使用fputcsv实现大数据的导出操作详解
2020/02/27 PHP
JQUERY复选框CHECKBOX全选,取消全选
2008/08/30 Javascript
JQuery 学习笔记 选择器之一
2009/07/23 Javascript
jquery插件制作 图片走廊 gallery
2012/08/17 Javascript
js数组操作常用方法
2014/05/08 Javascript
jQuery中:image选择器用法实例
2015/01/03 Javascript
PHP 数组current和next用法分享
2015/03/05 Javascript
原生JavaScript实现瀑布流布局
2020/06/28 Javascript
Javascript点击按钮随机改变数字与其颜色
2016/09/01 Javascript
微信公众平台开发教程(六)获取个性二维码的实例
2016/12/02 Javascript
微信小程序 数组中的push与concat的区别
2017/01/05 Javascript
Vue的Class与Style绑定的方法
2017/09/01 Javascript
jQuery内容过滤选择器与子元素过滤选择器用法实例分析
2019/02/20 jQuery
vue2 v-model/v-text 中使用过滤器的方法示例
2019/05/09 Javascript
Vue路由切换页面不更新问题解决方案
2020/07/10 Javascript
[06:04]DOTA2国际邀请赛纪录片:Just For LGD
2013/08/11 DOTA
Python字符串、元组、列表、字典互相转换的方法
2016/01/23 Python
Python程序中的观察者模式结构编写示例
2016/05/27 Python
python 接口测试response返回数据对比的方法
2018/02/11 Python
python验证码识别教程之滑动验证码
2018/06/04 Python
Python程序暂停的正常处理方法
2019/11/07 Python
Pytorch 实现冻结指定卷积层的参数
2020/01/06 Python
什么是Python变量作用域
2020/06/03 Python
HTML5 预加载让页面得以快速呈现
2013/08/13 HTML / CSS
全球虚拟主机商:HostGator
2017/02/06 全球购物
智能电子秤、手表和健康监测仪:Withings(之前为诺基亚健康)
2018/10/30 全球购物
eBay英国购物网站:eBay.co.uk
2019/06/19 全球购物
仪器仪表检测毕业生自荐信
2013/10/31 职场文书
Golang并发操作中常见的读写锁详析
2021/08/30 Golang
SpringBoot全局异常处理方案分享
2022/05/25 Java/Android