AngularJS入门教程一:路由用法初探


Posted in Javascript onMay 27, 2017

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

目前的理解中,这个NG的路由模块可以用于带有多视图的单页面开发。

先把所有代码贴出:

HTML:

<!doctype html>
<meta charset="UTF-8">
<html>
<head>
  <link href="self.css" rel="external nofollow" rel="stylesheet">
</head>
<body ng-app='routingDemoApp'>
<h2>AngularJS 路由应用</h2>
<ul>
  <li><a href="#/" rel="external nofollow" >首页</a></li>
  <li><a href="#/computers" rel="external nofollow" >电脑</a></li>
  <li><a href="#/user" rel="external nofollow" >用户</a></li>
  <li><a href="#/blabla" rel="external nofollow" >其他</a></li>
</ul>
<div ng-view></div>
<script src="angular.min.js"></script>
<script src="angular-route.min.js"></script>
<script src="test.js"></script>
</body>
</html>

list.html:

<div>
  <h1>HI,这里是list.html</h1>
  <h2>{{name}}</h2>
</div>

JS:

var app = angular.module('routingDemoApp',['ngRoute']);
app.config(['$routeProvider', function($routeProvider){
    $routeProvider
      .when('/',{template:'这是首页页面'})
      .when('/computers',{
        template:'这是电脑分类页面'
      })
      .when('/user',{templateUrl:'list.html',controller:'listController'})
      .otherwise({redirectTo:'/'});
}]);
app.controller('listController',function($scope){
  $scope.name="ROSE";
});

首先由于我用的是Angular1.5,所以需要额外引入angular-route.js:

<script src="angular.min.js"></script>
<script src="angular-route.min.js"></script>

要使用NG里的路由,必须先在特定的模块中定义它:

.config(['$routeProvider', function($routeProvider){
//内容
}

通过when和otherwise两个方法来进行路由的匹配。(其实就是匹配上面URL后面/的字符)。最后把匹配到的字符所对应的字段或者文件放入带有ng-view 指令的DOM里面。

when里面有许多属性。里面可以设置控制器,控制器会匹配给对应的字段或文件。就像上面代码中listController控制器一样。

ng-view指令有许多规则:

在匹配路由时:

1、创建一个新的当前作用域。
2、删除前一个作用域。
3、将当前的模板(控制器等)与当前新建的作用域关联起来。
4、如果有内置关联的控制器,将其与当期作用域关联起来。

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

Javascript 相关文章推荐
jQuery 使用手册(六)
Sep 23 Javascript
JSON 数据格式介绍
Jan 13 Javascript
深入理解Javascript动态方法调用与参数修改的问题
Dec 10 Javascript
IE中图片的onload事件无效问题和解决方法
Jun 06 Javascript
jquery实现鼠标拖拽滑动效果来选择数字的方法
May 04 Javascript
适用于javascript开发者的Processing.js入门教程
Feb 24 Javascript
vue制作加载更多功能的正确打开方式
Oct 12 Javascript
js中通过getElementsByName访问name集合对象的方法
Oct 31 Javascript
详解Angular.js数据绑定时自动转义html标签及内容
Mar 30 Javascript
详解从零搭建 vue2 vue-router2 webpack3 工程
Nov 22 Javascript
详解小程序用户登录状态检查与更新实例
May 15 Javascript
微信小程序地图实现展示线路
Jul 29 Javascript
Angular 4环境准备与Angular cli创建项目详解
May 27 #Javascript
BootStrap Table 后台数据绑定、特殊列处理、排序功能
May 27 #Javascript
Angularjs自定义指令Directive详解
May 27 #Javascript
react-redux中connect()方法详细解析
May 27 #Javascript
react-router实现跳转传值的方法示例
May 27 #Javascript
简单实现JavaScript弹幕效果
Aug 27 #Javascript
Node.js中多进程模块Cluster的介绍与使用
May 27 #Javascript
You might like
php中将汉字转换成拼音的函数代码
2012/09/08 PHP
PHP中返回引用类型的方法
2015/04/03 PHP
magento后台无法登录解决办法的两种方法
2016/12/09 PHP
微信公众平台开发教程⑤ 微信扫码支付模式介绍
2019/04/10 PHP
Javascript document.referrer判断访客来源网址
2020/05/15 Javascript
20个非常有用的PHP类库 加速php开发
2010/01/15 Javascript
基于json的jquery地区联动效果代码
2011/07/06 Javascript
一些实用的jQuery代码片段收集
2011/07/12 Javascript
mailto的使用技巧分享
2012/12/21 Javascript
javascript从右边截取指定字符串的三种实现方法
2013/11/29 Javascript
jQuery+ajax实现鼠标单击修改内容的方法
2014/06/27 Javascript
js实现按一下删除键删除整个单词附demo
2014/09/05 Javascript
JavaScript删除指定子元素代码实例
2015/01/13 Javascript
js鼠标悬浮出现遮罩层的方法
2015/01/28 Javascript
JS实现超炫网页烟花动画效果的方法
2015/03/02 Javascript
jQuery检测鼠标左键和右键点击的方法
2015/03/17 Javascript
面向切面编程(AOP)的理解
2015/05/01 Javascript
JS实现的文字与图片定时切换效果代码
2015/10/06 Javascript
js获取对象、数组的实际长度,元素实际个数的实现代码
2016/06/08 Javascript
JS常见简单正则表达式验证功能小结【手机,地址,企业税号,金额,身份证等】
2017/01/22 Javascript
js+html5实现手机九宫格密码解锁功能
2018/07/30 Javascript
浅析js中mvvm模式实现的原理
2018/10/06 Javascript
微信小程序实现的自定义分享功能示例
2019/02/12 Javascript
Javascript通过控制类名更改样式
2019/05/24 Javascript
微信提示 在浏览器打开 效果实现过程解析
2019/09/10 Javascript
JS前端广告拦截实现原理解析
2020/02/17 Javascript
Flexible.js可伸缩布局实现方法详解
2020/11/13 Javascript
用pywin32实现windows模拟鼠标及键盘动作
2014/04/22 Python
Python通过90行代码搭建一个音乐搜索工具
2015/07/29 Python
python使用wxpy实现微信消息防撤回脚本
2019/04/29 Python
python如何使用Redis构建分布式锁
2020/01/16 Python
文秘应聘自荐书范文
2014/02/18 职场文书
大学毕业感言200字
2014/03/09 职场文书
幼儿园六一儿童节活动方案
2014/08/26 职场文书
国土资源局开展党的群众路线教育实践活动整改措施
2014/09/26 职场文书
好员工观后感
2015/06/17 职场文书