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 相关文章推荐
网上应用的一个不错common.js脚本
Aug 08 Javascript
原生js和jQuery写的网页选项卡特效对比
Apr 27 Javascript
AngularJS中过滤器的使用与自定义实例代码
Sep 17 Javascript
利用JS实现页面删除并重新排序功能
Dec 09 Javascript
vue实现一个移动端屏蔽滑动的遮罩层实例
Jun 08 Javascript
微信页面弹出键盘后iframe内容变空白的解决方案
Sep 20 Javascript
JS获取并处理php数组的方法实例分析
Sep 04 Javascript
React 使用Hooks简化受控组件的状态绑定
Mar 18 Javascript
vue如何实现动态加载脚本
Feb 05 Javascript
详细分析React 表单与事件
Jul 08 Javascript
JQuery使用数组遍历跳出each循环
Sep 01 jQuery
详解微信小程序「渲染层网络层错误」的解决方法
Jan 06 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
浅谈电磁辐射对健康的影响
2021/03/01 无线电
yii2使用ajax返回json的实现方法
2016/05/14 PHP
thinkPHP框架整合tcpdf插件操作示例
2018/08/07 PHP
javascript不同页面传值的改进版
2008/09/30 Javascript
jquery select选中的一个小问题
2009/10/11 Javascript
如何使用jQuery来处理图片坏链具体实现步骤
2013/05/02 Javascript
写得不错的jquery table鼠标经过变色代码
2013/09/27 Javascript
jQuery中focus事件用法实例
2014/12/26 Javascript
javascript实现3D变换的立体圆圈实例
2015/08/06 Javascript
深入学习jQuery Validate表单验证(二)
2016/01/18 Javascript
jQuery+PHP+MySQL实现无限级联下拉框效果
2016/02/19 Javascript
AngularJS ng-bind-html 指令详解及实例代码
2016/07/30 Javascript
JS用斜率判断鼠标进入DIV四个方向的方法
2016/11/07 Javascript
Bootstrap整体框架之JavaScript插件架构
2016/12/15 Javascript
vue导出html、word和pdf的实现代码
2018/07/31 Javascript
详解Vue组件之作用域插槽
2018/11/22 Javascript
node中IO以及定时器优先级详解
2019/05/10 Javascript
利用Vue的v-for和v-bind实现列表颜色切换
2020/07/17 Javascript
[01:02:09]Liquid vs TNC 2019国际邀请赛淘汰赛 胜者组 BO3 第二场 8.21
2020/07/19 DOTA
python 判断自定义对象类型
2009/03/21 Python
Python中__init__和__new__的区别详解
2014/07/09 Python
使用C++扩展Python的功能详解
2018/01/12 Python
Python安装pycurl失败的解决方法
2018/10/15 Python
python利用selenium进行浏览器爬虫
2019/04/25 Python
python上传时包含boundary时的解决方法
2020/04/08 Python
详解scrapy内置中间件的顺序
2020/09/28 Python
荷兰的时尚市场:To Be Dressed
2019/05/06 全球购物
电子商务专业自我鉴定
2013/12/18 职场文书
创业计划实施的7大步骤
2014/02/05 职场文书
喝酒检查书范文
2014/02/23 职场文书
三八妇女节趣味活动方案
2014/08/23 职场文书
2014年行政助理工作总结
2014/11/19 职场文书
3.15消费者权益日活动总结
2015/02/09 职场文书
2015年公司国庆放假通知
2015/07/30 职场文书
CPU不支持Windows11系统怎么办
2021/11/21 数码科技
如何在python中实现ECDSA你知道吗
2021/11/23 Python