时间:2021-05-18
本文实例讲述了微信小程序实现页面跳转传值以及获取值的方法。分享给大家供大家参考,具体如下:
在安卓中页面跳转传值都是通过bundle,现在研究一下小程序的列表跳转及页面传值。
my.wxml
<view class="container"> <view bindtap="bindViewTap" class="userinfo"> <image class="userinfo-avatar" src="{{userInfo.avatarUrl}}" background-size="cover"></image> <text class="userinfo-nickname">{{userInfo.nickName}}</text> </view> <view class="info_list"> <block wx:for="{{userListInfo}}" > <view class="weui_cell" data-index="{{item.index}}" id="{{item.index}}" bindtap="userinfo_item"> <view class="weui_cell_hd"> <image src="{{item.icon}}"></image> </view> <view class="weui_cell_bd"> <view class="weui_cell_bd_p"> {{item.text}} </view> </view> <view wx:if="{{item.isunread}}" class="badge">{{item.unreadNum}}</view> <view class="with_arrow"></view> </view> </block> </view></view>my.js
var app = getApp()Page({ data: { userInfo: {}, userListInfo: [{ icon: '../../images/iconfont-dingdan.png', text: '我的订单', isunread: true, unreadNum: 2, index:1 }, { icon: '../../images/iconfont-kefu.png', text: '联系客服', index: 5 }, { icon: '../../images/iconfont-help.png', text: '常见问题', index: 6 }] }, onLoad: function () { var that = this //调用应用实例的方法获取全局数据 app.getUserInfo(function (userInfo) { //更新数据 that.setData({ userInfo: userInfo }) }) }, userinfo_item: function (e) { var index = e.target.dataset.index; console.log("----index----" + index) console.log('-----id-----' + e.currentTarget.id) var app = getApp(); //设置全局的请求访问传递的参数 app.requestId = e.currentTarget.id; app.requestIndex = index; }})微信小程序设置id的方法标识来传值
在要跳转的item处,设置一个id并给当前的id赋值上对应的key值,
如 id="{{item.index}}"
后我们在js的bindtap的响应事件中获取,并传递到下一个界面中;
获取到id传的值
通过e.currentTarget.id;获取设置的id值,并通过设置全局对象的方式来传递数值,
获取全局对象 var app=getApp(); //设置全局的请求访问传递的参数 app.requestDetailid=id;
在调试模式下:我们也可以在,wxml中查看到我们设置的每一个item的id值
通过使用data - xxxx 的方法标识来传值
通过使用data - xxxx 的方法标识来传值,xxxx可以自定义取名 比my.wxml中的data-index。
如何获取data-xxxx传递的值?
在js的bindtap的响应事件中:
通过数据解析一层层找到数据,var id=e.target.dataset.index(根据你的data-id的取名)
如js中的两个打印就是通过两种不同方式获得的id。
微信小程序如何跨页面获取值
依据上面的方式设置要传递的值,页面跳转后,我们就需要在下一个页面拿到传递的数据(这个数据在传递前,就已经被设置成全局变量)相当于给全局变量添加了新的key,value
在跳转后的js页面,接收传递过来的数据detail.js
同样通过全局额方式取值出来,(即和app.js中取某个变量的值是一样的)
通过链接传参:
wx.navigateTo({ url: '/pages/account/feedback/feedback?test=feedback_test&name=jia', success: function(res) {}, fail: function(res) {}, complete: function(res) {},})点击页面跳转时通过?方式传参。在跳转后的页面JS中做如下接收:
onLoad: function (e) { var movieid = getApp().requestId; var movieIndex = getApp().requestIndex; console.log("-----feedback--movieid--" + movieid +" " + movieIndex); console.log("-----feedback--test--" + e.test); console.log("-----feedback--name--" + e.name); },感觉比较好的方法还是通过链接方式进行参数传递,第一种有些像安卓中进行页面跳转,把一些传递的参数写到Application中,第二种是像通过bundle方式进行传递。前端小白总结,希望前端丰富的同学可以提供更多思路。
希望本文所述对大家微信小程序开发有所帮助。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
微信小程序传值以及获取值方法,传值有两种方法,对应也有获取值得方法,1、设置id的方法标识跳转后传递的参数值;2、通过使用data-xxxx的方法来标识要传递的
本文实例讲述了微信小程序实现两个页面传值的方法。分享给大家供大家参考,具体如下:需求:发送页面通过url传值,接收页面获取值。发送页面的jsvarnowid='
本文实例讲述了微信小程序页面间传值与页面取值操作。分享给大家供大家参考,具体如下:微信小程序页面间传值1.js页面间的传值:url:'路径?值='+获取
微信小程序页面跳转如何实现传值(1)页面跳转如何传值(实现跳转到不同页面)点击页面WXML:加入自定义属性(data-category="{{categoryT
微信小程序页面跳转及数据传递详解类似Android的Intent传值,微信小程序也一样可以传值:例如:wxml中写了一个函数跳转:已完成任务{{finished