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 相关文章推荐
jQuery源码分析-03构造jQuery对象-源码结构和核心函数
Nov 14 Javascript
JS仿百度搜索自动提示框匹配查询功能
Nov 21 Javascript
js 判断控件获得焦点的示例代码
Mar 04 Javascript
jquery操作HTML5 的data-*的用法实例分享
Aug 17 Javascript
jQuery中prev()方法用法实例
Jan 08 Javascript
javascript中setAttribute()函数使用方法及兼容性
Jul 19 Javascript
jquery模拟alert的弹窗插件
Jul 31 Javascript
js判断日期时间有效性的方法
Oct 24 Javascript
JavaScript基础之流程控制语句的用法
Aug 31 Javascript
使用js实现单链解决前端队列问题的方法
Feb 03 Javascript
Element InputNumber 计数器的实现示例
Aug 03 Javascript
记一次vue跨域的解决
Oct 21 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
将文件夹压缩成zip文件的php代码
2009/12/14 PHP
js 与或运算符 || &amp;&amp; 妙用
2009/12/09 Javascript
跨浏览器开发经验总结(三)   警惕“IE依赖综合症”
2010/05/13 Javascript
js有关元素内容操作小结
2011/12/20 Javascript
固定表格行列(expression)在IE下适用
2013/07/25 Javascript
JQuery页面的表格数据的增加与分页的实现
2013/12/10 Javascript
js获取窗口相对于屏幕左边和上边的位置坐标
2014/05/15 Javascript
基于JavaScript实现手机短信按钮倒计时(超简单)
2015/12/30 Javascript
百度坐标(BD09)、国测局坐标(火星坐标,GCJ02)、和WGS84坐标系之间的转换
2016/02/19 Javascript
CascadeView级联组件实现思路详解(分离思想和单链表)
2016/04/12 Javascript
Angular 4依赖注入学习教程之FactoryProvider配置依赖对象(五)
2017/06/04 Javascript
详解Vue的computed(计算属性)使用实例之TodoList
2017/08/07 Javascript
webpack学习教程之前端性能优化总结
2017/12/05 Javascript
SVG实现时钟效果
2018/07/17 Javascript
详解如何在微信小程序中愉快地使用sass
2018/07/30 Javascript
Vue2.0生命周期的理解
2018/08/20 Javascript
JavaScript 格式化数字、金额、千分位、保留几位小数、舍入舍去
2019/07/23 Javascript
微信小程序按钮点击动画效果的实现
2019/09/04 Javascript
js实现数据导出为EXCEL(支持大量数据导出)
2020/03/31 Javascript
vue项目中自定义video视频控制条的实现代码
2020/04/26 Javascript
详解Vue.js3.0 组件是如何渲染为DOM的
2020/11/10 Javascript
[01:35]辉夜杯战队访谈宣传片—iG.V
2015/12/25 DOTA
PHP魔术方法__ISSET、__UNSET使用实例
2014/11/25 Python
使用Python设置tmpfs来加速项目的教程
2015/04/17 Python
python使用mysql的两种使用方式
2018/03/07 Python
python使用百度文字识别功能方法详解
2019/07/23 Python
Pytorch转keras的有效方法,以FlowNet为例讲解
2020/05/26 Python
Html5新标签解释及用法
2012/02/17 HTML / CSS
HTML5中Localstorage的使用教程
2015/07/09 HTML / CSS
党校学习思想汇报
2014/01/06 职场文书
社会实践活动总结报告
2014/04/29 职场文书
有子女的离婚协议书怎么写(范本)
2014/09/29 职场文书
2014年精神文明建设工作总结
2014/11/19 职场文书
火烧圆明园观后感
2015/06/03 职场文书
小鞋子观后感
2015/06/05 职场文书
毕业班班主任工作总结2015
2015/07/23 职场文书