AngularJS入门教程二:在路由中传递参数的方法分析


Posted in Javascript onMay 27, 2017

本文实例讲述了AngularJS在路由中传递参数的方法。分享给大家供大家参考,具体如下:

我们不仅可以在控制器中直接定义属性的值,比如:

app.controller('listController',function($scope){
  $scope.name="ROSE";
});

AngularJS还提供了传递参数的功能,目前我接触到的一种方式是从视图中传参:

<!--首页html-->
<li><a href="#/user/18" rel="external nofollow" rel="external nofollow" >用户</a></li>
//js
.config(['$routeProvider', function($routeProvider){
    $routeProvider.
    when('/user/:age',{
        templateUrl:'list.html',
        controller:'listController'})
 }]);
<!--list.html-->
<div>
  <div>
  <h1>HI,这里是list.html</h1>
  <h2>{{name}}</h2>
  <h3>{{params.age}}</h3>
</div>
</div>

AngularJs提供了一种让首页视图中将“18”传递到list.html视图的方法。那就是将该实参放到视图路由地址后面。如这里的<li><a href="#/user/18" rel="external nofollow" rel="external nofollow" >用户</a></li> 。然后在JS的when方法中声明该一个变量用来匹配该实参。但是该实参是作为一个“键值”保存在$routeParams (数组)里面,我们必须在控制符中注入它(所谓注入其实就是把他里面的属性和值都共享出来?)。然后在控制器中声明并赋值,(也即是取出来)。如下:

.controller('listController',function($scope,$routeParams){
  $scope.name="ROSE";
  $scope.params=$routeParams;
});

总结传参步骤如下:

1、在首页视图的”/”后面添加要传递的实参。
2、在路由配置中的路由路径中定义一个变量用以匹配,格式为/:varible 。
3、配置控制器,将$routeParams 注入到控制器当中。
4、在控制器中进行赋值。$scope.params=$routeParams; 。
5、在路由完成后的视图中成功显示出该实参。 <h3>{{params.age}}</h3>

需要注意的一点是,该实参是作为一个键值存在$routeParams里面的,必须通过访问他所对应的变量(在这里是age),才能得到该值。

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

Javascript 相关文章推荐
图片自动缩小的js代码,用以防止图片撑破页面
Mar 12 Javascript
js正则表达式的使用详解
Jul 09 Javascript
JavaScript中字符串(string)转json的2种方法
Jun 25 Javascript
JavaScript简单实现弹出拖拽窗口(一)
Jun 17 Javascript
微信小程序实现点击按钮修改文字大小功能【附demo源码下载】
Dec 06 Javascript
Java设计中的Builder模式的介绍
Mar 22 Javascript
vue组件name的作用小结
May 23 Javascript
vue使用中的内存泄漏【推荐】
Jul 10 Javascript
Vue.js获取手机系统型号、版本、浏览器类型的示例代码
May 10 Javascript
vue实践---根据不同环境,自动转换请求的url地址操作
Sep 21 Javascript
JavaScript实现网页tab栏效果制作
Nov 20 Javascript
微信小程序canvas实现签名功能
Jan 19 Javascript
AngularJS入门教程一:路由用法初探
May 27 #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
You might like
PHP常用设计模式之委托设计模式
2016/02/13 PHP
Yii2.0中使用js异步删除示例
2017/03/10 PHP
Laravel 微信小程序后端实现用户登录的示例代码
2019/11/26 PHP
初窥JQuery-Jquery简介 入门了解篇
2010/11/25 Javascript
JS按位非(~)运算符与~~运算符的理解分析
2011/07/31 Javascript
js数组的基本用法及数组根据下标(数值或字符)移除元素
2013/10/20 Javascript
JS实现仿百度输入框自动匹配功能的示例代码
2014/02/19 Javascript
Javascript基础知识(一)核心基础语法与事件模型
2014/09/29 Javascript
在JS中操作时间之getUTCMilliseconds()方法的使用
2015/06/10 Javascript
Jquery常用的方法汇总
2015/09/01 Javascript
基于javascript实现彩票随机数生成(升级版)
2020/04/17 Javascript
理解Javascript图片预加载
2016/02/23 Javascript
Jquery揭秘系列:ajax原生js实现详解(推荐)
2016/06/08 Javascript
jQuery UI Bootstrap是什么?
2016/06/17 Javascript
JavaScript暂停和继续定时器的实现方法
2016/07/18 Javascript
AngularJS基础 ng-href 指令用法
2016/08/01 Javascript
mvc中form表单提交的三种方式(推荐)
2016/08/10 Javascript
详解JavaScript常量定义
2017/01/03 Javascript
微信小程序支付及退款流程详解
2017/11/30 Javascript
vue2.0组件之间传值、通信的多种方式(干货)
2018/02/10 Javascript
Vue引用Swiper4插件无法重写分页器样式的解决方法
2018/09/27 Javascript
Node 代理访问的实现
2019/09/19 Javascript
小程序实现横向滑动日历效果
2019/10/21 Javascript
python 算法 排序实现快速排序
2012/06/05 Python
Python md5与sha1加密算法用法分析
2017/07/14 Python
Python使用asyncio包处理并发详解
2017/09/09 Python
python3.6使用pymysql连接Mysql数据库
2018/05/25 Python
详解flask表单提交的两种方式
2018/07/21 Python
Python 转换RGB颜色值的示例代码
2019/10/13 Python
win10下python3.8的PIL库安装过程
2020/06/08 Python
基于Python下载网络图片方法汇总代码实例
2020/06/24 Python
canvas简单连线动画的实现代码
2020/02/04 HTML / CSS
微信小程序canvas实现水平、垂直居中效果
2020/02/05 HTML / CSS
讲座通知范文
2015/04/23 职场文书
2019年第四季度财务部门工作计划
2019/11/02 职场文书
JavaScript中MutationObServer监听DOM元素详情
2021/11/27 Javascript