详解AngularJS跨页面传值(ui-router)


Posted in Javascript onAugust 23, 2017

博主用的ionic 这里使用ui-router传值,用来在跳转页面的同时带着你想带走的东西一起跳走

(PS:博主半路出家,尚是菜鸟,写的东西自己跑起来并没有什么问题但不敢保证写的一定对,语言也很随意,仅供参考。另,期待各位前辈的指教)

博主用的ionic

这里使用ui-router传值,用来在跳转页面的同时带着你想带走的东西一起跳走

需求是这样的,我有一个商品单子(概览页),点一个商品就可以去看它的详情(详情页)
要解决的问题就是把概览页被点击的商品的id传给详情页,详情页拿着这个id给后台,后台返回对应的需要的json

下面开始实现

.controller('CafeCtrl', function($scope, cafeData, $state) { //往外传值的controller里加一个$state
 $scope.cafeList = cafeData.All();
 $scope.goDetail = function(id) {
  $state.go('itemDetail',{sort : "cafe", id : id}); //就拿它传
 };
})

在传值的一行:

$state.go('itemDetail',{sort : "cafe", id : id});
//前面的是变量名,后边的是值

我的理解是:塞了两个变量到一个中转的名叫$stateParams的什么东西里面,controller里面写法就是这样子的,页面上ng-click="goDetail(item.id)"调用它就可以了

app.js里,接收值的页面(详情页).state这么写,留两个位置给刚才传出来的东西

.state('itemDetail', {
 url: '/itemDetail/:sort/:id/', //这里就是那两个要传的东西,名字要对应相同
 templateUrl: 'templates/itemDetail.html',
 controller: 'ItemDetailCtrl'
})

然后再去接收值的页面(详情页)接收这俩值存俩对象里面(接受并存下了传来的两个值)

.controller('ItemDetailCtrl', function($scope, $stateParams, $state) { //加个$stateParams
 $scope.sort = $stateParams.sort;
 $scope.itemId = $stateParams.id;
})

在上面加个$stateParams,然后下面scope一个对象,把你要的值从$stateParams里面拿点儿出来赋值给它就ok了

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Javascript 代码也可以变得优美的实现方法
Jun 22 Javascript
jQuery 行背景颜色的交替显示(隔行变色)实现代码
Dec 13 Javascript
jQuery学习之prop和attr的区别示例介绍
Nov 15 Javascript
js智能获取浏览器版本UA信息的方法
Aug 08 Javascript
javascript的document中的动态添加标签实现方法
Oct 24 Javascript
js阻止移动端页面滚动的两种方法
Jan 25 Javascript
详解关于react-redux中的connect用法介绍及原理解析
Sep 11 Javascript
vue无限轮播插件代码实例
May 10 Javascript
微信小程序 wx:for遍历循环使用实例解析
Sep 09 Javascript
JavaScript创建表格的方法
Apr 13 Javascript
基于openlayers实现角度测量功能
Sep 28 Javascript
vue-router中hash模式与history模式的区别
Jun 23 Vue.js
vue中页面跳转拦截器的实现方法
Aug 23 #Javascript
jquery.rotate.js实现可选抽奖次数和中奖内容的转盘抽奖代码
Aug 23 #jQuery
Angular2+国际化方案(ngx-translate)的示例代码
Aug 23 #Javascript
JS实现问卷星自动填问卷脚本并在两秒自动提交功能
Jun 17 #Javascript
简单实现jQuery上传图片显示预览功能
Jun 29 #jQuery
浅谈vue-lazyload实现的详细过程
Aug 22 #Javascript
关于定制FileField中的上传文件名称问题
Aug 22 #Javascript
You might like
投票管理程序
2006/10/09 PHP
中篇:安装及配置PHP
2006/12/13 PHP
smarty section简介与用法分析
2008/10/03 PHP
PHP json_decode函数详细解析
2014/02/17 PHP
php使用类继承解决代码重复的问题
2015/02/11 PHP
日常整理PHP中简单的图形处理(经典)
2015/10/26 PHP
PHP 7安装使用体验之性能大提升,兼容性强,扩展支持不够(升级PHP要谨慎)
2017/07/27 PHP
给jqGrid数据行添加修改和删除操作链接(之一)
2011/11/04 Javascript
JS操作iframe里的dom(实例讲解)
2014/01/29 Javascript
jquery的ajax简单结构示例代码
2014/02/17 Javascript
jQuery实现仿路边灯箱广告图片轮播效果
2015/04/15 Javascript
深入分析Javascript跨域问题
2015/04/17 Javascript
省市区三级联动下拉框菜单javascript版
2015/08/11 Javascript
AngularJs Scope详解及示例代码
2016/09/01 Javascript
基于JS实现限时抢购倒计时间表代码
2017/05/09 Javascript
JavaScript实现移动端页面按手机屏幕分辨率自动缩放的最强代码
2017/08/18 Javascript
Web技术实现移动监测的介绍
2017/09/18 Javascript
vue-lazyload图片延迟加载插件的实例讲解
2018/02/09 Javascript
微信小程序非跳转式组件授权登录的方法示例
2019/05/22 Javascript
Vue2.X和Vue3.0数据响应原理变化的区别
2019/11/07 Javascript
Vue 实现显示/隐藏层的思路(加全局点击事件)
2019/12/31 Javascript
python使用7z解压软件备份文件脚本分享
2014/02/21 Python
编写Python脚本来获取Google搜索结果的示例
2015/05/04 Python
python创建进程fork用法
2015/06/04 Python
Python操作RabbitMQ服务器实现消息队列的路由功能
2016/06/29 Python
浅析Python中return和finally共同挖的坑
2017/08/18 Python
python使用PIL模块获取图片像素点的方法
2019/01/08 Python
python中pytest收集用例规则与运行指定用例详解
2019/06/27 Python
Python + OpenCV 实现LBP特征提取的示例代码
2019/07/11 Python
python爬虫爬取笔趣网小说网站过程图解
2019/11/18 Python
python切割图片的示例
2020/11/12 Python
CSS3 实现童年的纸飞机
2019/05/05 HTML / CSS
HTML5 图片悬停放大的实现代码示例
2019/12/04 HTML / CSS
必须要使用游标的SQL语句有那些
2012/05/07 面试题
教研活动总结
2014/04/28 职场文书
民间借贷被告代理词
2015/05/23 职场文书