详解AngularJS跨页面传值(ui-router)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了详解AngularJS跨页面传值(ui-router),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1602字,纯文字阅读大概需要3分钟。
内容图文
![详解AngularJS跨页面传值(ui-router)](/upload/InfoBanner/zyjiaocheng/342/f4ef9424025149f3a2486ff1b40f5002.jpg)
博主用的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了
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
内容总结
以上是互联网集市为您收集整理的详解AngularJS跨页面传值(ui-router)全部内容,希望文章能够帮你解决详解AngularJS跨页面传值(ui-router)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。