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 相关文章推荐
JavaScript 编程引入命名空间的方法
Jun 29 Javascript
javascript 获取图片颜色
Apr 05 Javascript
Javascript 构造函数,公有,私有特权和静态成员定义方法
Nov 30 Javascript
通过JavaScript控制字体大小的代码
Oct 04 Javascript
随鼠标移动的时钟非常漂亮遗憾的是只支持IE
Aug 12 Javascript
浅谈jquery中的each方法$.each、this.each、$.fn.each
Jun 23 Javascript
jQuery插件HighCharts绘制2D柱状图、折线图和饼图的组合图效果示例【附demo源码下载】
Mar 09 Javascript
微信小程序使用checkbox显示多项选择框功能【附源码下载】
Dec 11 Javascript
浅谈vue中.vue文件解析流程
Apr 24 Javascript
JavaScript日期工具类DateUtils定义与用法示例
Sep 03 Javascript
使用ECharts实现状态区间图
Oct 25 Javascript
javascript(基于jQuery)实现鼠标获取选中的文字示例【测试可用】
Oct 26 jQuery
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
MySql 按时间段查询数据方法(实例说明)
2008/11/02 PHP
PHP 第二节 数据类型之转换
2012/04/28 PHP
linux下为php添加iconv模块的方法
2016/02/28 PHP
Thinkphp框架开发移动端接口(1)
2016/08/18 PHP
php将print_r处理后的数据还原为原始数组的解决方法
2016/11/02 PHP
php中遍历二维数组并以表格的形式输出的方法
2017/01/03 PHP
Laravel中unique和exists验证规则的优化详解
2018/01/28 PHP
Laravel框架定时任务2种实现方式示例
2018/12/08 PHP
层序遍历在ExtJs的TreePanel中的应用
2009/10/16 Javascript
广泛收集的jQuery拖放插件集合
2012/04/09 Javascript
jQuery实现仿腾讯微博滑出效果报告每日天气的方法
2015/05/11 Javascript
Web性能优化系列 10个提升JavaScript性能的技巧
2016/09/27 Javascript
jQuery中Nicescroll滚动条插件的用法
2016/11/10 Javascript
js/jquery控制页面动态加载数据 滑动滚动条自动加载事件的方法
2017/02/08 Javascript
jquery实现手机端单店铺购物车结算删除功能
2017/02/22 Javascript
jQuery加密密码到cookie的实现代码
2017/04/18 jQuery
jQuery选择器之属性过滤选择器详解
2017/09/28 jQuery
利用HBuilder打包前端开发webapp为apk的方法
2017/11/13 Javascript
JavaScript实现多叉树的递归遍历和非递归遍历算法操作示例
2018/02/08 Javascript
webpack4从0搭建组件库的实现
2020/11/29 Javascript
Python 函数基础知识汇总
2018/03/09 Python
对Python捕获控制台输出流的方法详解
2019/01/07 Python
详解爬虫被封的问题
2019/04/23 Python
PyQt5 多窗口连接实例
2019/06/19 Python
Python实现的微信红包提醒功能示例
2019/08/22 Python
python队列原理及实现方法示例
2019/11/27 Python
python将数组n等分的实例
2019/12/02 Python
pycharm开发一个简单界面和通用mvc模板(操作方法图解)
2020/05/27 Python
使用tensorflow进行音乐类型的分类
2020/08/14 Python
Python+Selenium随机生成手机验证码并检查页面上是否弹出重复手机号码提示框
2020/09/21 Python
Python的轻量级ORM框架peewee使用教程
2021/02/05 Python
python实现b站直播自动发送弹幕功能
2021/02/20 Python
设备技术员岗位职责
2015/04/11 职场文书
运动会开幕式新闻稿
2015/07/17 职场文书
详解Vue slot插槽
2021/11/20 Vue.js
CentOS7 minimal 最小化安装网络设置过程
2022/12/24 Servers