微信小程序 动态传参实例详解


Posted in Javascript onApril 27, 2017

微信小程序 动态传参实例详解

在微信小程序的开发过程中经常会用到动态传参,比如根据某一页面传参的不同,加载不同的新的页面。接下来介绍下如何实现。

上一篇博客中介绍了如何用wx:for循环显示数组,一般情况下我们要实现的功能是点击不同的元素进入不同的页面,比如在另一个页面加载某个元素的详细信息。

跳转这里采用navigator跳转,在navigator跳转的链接上将参数加上去:

index.wxml(根据点击页面的不同传递参数)

<view class="item" wx:for="{{showData}}"> 
 <navigator url="/pages/logs/logs?id={{item.id}}" class="title"> 
 <view class="td"> 
  {item.MTId}} {{item.status}} 
 </view> 
 </navigator> 
</view>

id是在本地数据中已经写好的,参见以前的博客,它也对应了每一条数据其他详细信息。由此可以想到,我们只要在下一级页面根据传递参数id再在本地数据中查询,然后将查询结果进行显示,就做到了加载详细信息这个功能。

logs.js(接受index.wxml传递的参数并处理)

Page({ 
 onLoad: function (options) { 
 console.log(options.id) 
 var init = myData.searchmtdata(options.id) 
 this.setData({ 
  data_MTId: init.MTId, 
  data_status: init.status, 
  data_duration: init.Duration, 
  data_Operator: init.Operator, 
  data_IdleReason: init.IdleReason 
 }) 
 } 
})

searchmtdata这个方法在之前的博客中已经有说明,就是根据id的值来查询,返回一个list中具体的对象,即某个item的详细信息。

onLoad:function这个函数在页面加载时就会执行一次,options就是接收的从index.wxml传递过来的参数。根据id查询到具体的list对象后再进行赋值,此时data_**中的数据就是某个item的详细信息了。

logs.wxml(对item的详细信息进行显示)

<view class="ar_item" style="border-top:1px solid #ddd;"> 
 <text class="ar_name">MTID</text> 
 <text class="ar_content">{{data_MTId}}</text> 
</view> 
<view class="ar_item"> 
 <text class="ar_name">Status</text> 
 <text class="ar_content">{{ data_status}}</text> 
</view> 
<view class="ar_item"> 
 <text class="ar_name">Duration</text> 
 <text class="ar_content">{{data_duration}}</text> 
</view> 
<view class="ar_item"> 
 <text class="ar_name">Operator</text> 
 <text class="ar_content">{{data_Operator}}</text> 
</view> 
<view class="ar_item"> 
 <text class="ar_name">Idle Reason</text> 
 <text class="ar_content">{{data_IdleReason}}</text> 
</view>

实现效果截图:

微信小程序 动态传参实例详解

点击具体某个item

微信小程序 动态传参实例详解微信小程序 动态传参实例详解

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
jquery select选中的一个小问题
Oct 11 Javascript
js实现幻灯片效果(基于jquery插件)
Nov 05 Javascript
jquery动态更换设置背景图的方法
Mar 25 Javascript
纯js和css实现渐变色包括静态渐变和动态渐变
May 29 Javascript
js仿3366小游戏选字游戏
Apr 14 Javascript
Bootstrap Fileinput文件上传组件用法详解
May 10 Javascript
Angular2搜索和重置按钮过场动画
May 24 Javascript
微信小程序基于slider组件动态修改标签透明度的方法示例
Dec 04 Javascript
Javascript中parseInt的正确使用方式
Oct 17 Javascript
Node.js中文件系统fs模块的使用及常用接口
Mar 06 Javascript
vue实现简单跑马灯效果
May 25 Javascript
vue-cli3.x配置全局的scss的时候报错问题及解决
Apr 30 Vue.js
微信小程序 本地数据读取实例
Apr 27 #Javascript
js模仿微信朋友圈计算时间显示几天/几小时/几分钟/几秒之前
Apr 27 #Javascript
js获取浏览器的各种属性
Apr 27 #Javascript
jQuery鼠标悬停内容动画切换效果
Apr 27 #jQuery
详解axios在node.js中的post使用
Apr 27 #Javascript
使用jQuery,Angular实现登录界面验证码详解
Apr 27 #jQuery
js绑定事件和解绑事件
Apr 27 #Javascript
You might like
php数组函数序列之array_unique() - 去除数组中重复的元素值
2011/10/29 PHP
php获取网页中图片、DIV内容的简单方法
2014/06/19 PHP
cakephp打印sql语句的方法
2015/02/13 PHP
PHP实现webshell扫描文件木马的方法
2017/07/31 PHP
window.open的功能全解析
2006/10/10 Javascript
js导出table到excel同时兼容FF和IE示例
2013/09/03 Javascript
关闭浏览器输入框自动补齐 兼容IE,FF,Chrome等主流浏览器
2014/02/11 Javascript
JSON取值前判断
2014/12/23 Javascript
浅谈JavaScript中Date(日期对象),Math对象
2015/02/05 Javascript
使用nodejs开发cli项目实例
2015/06/03 NodeJs
浅谈JavaScript字符串拼接
2015/06/25 Javascript
JavaScript中的时间处理小结
2016/02/24 Javascript
js改变style样式和css样式的简单实例
2016/06/28 Javascript
JS遍历对象属性的方法示例
2017/01/10 Javascript
layui文件上传实现代码
2017/05/20 Javascript
Vue引用Swiper4插件无法重写分页器样式的解决方法
2018/09/27 Javascript
微信小程序实现笑脸评分功能
2018/11/03 Javascript
微信小程序与webview交互实现支付功能
2019/06/07 Javascript
关于AngularJS中几种Providers的区别总结
2020/05/17 Javascript
Python map和reduce函数用法示例
2015/02/26 Python
Python编写百度贴吧的简单爬虫
2015/04/02 Python
python开发之thread线程基础实例入门
2015/11/11 Python
Python贪心算法实例小结
2018/04/22 Python
opencv转换颜色空间更改图片背景
2019/08/20 Python
关于Python-faker的函数效果一览
2019/11/28 Python
利用python3 的pygame模块实现塔防游戏
2019/12/30 Python
HTML5添加鼠标悬浮音响效果不使用FLASH
2014/04/23 HTML / CSS
冰淇淋开店创业计划书
2014/02/01 职场文书
爱国演讲稿400字
2014/05/07 职场文书
品质标语大全
2014/06/21 职场文书
数学教育专业求职信
2014/07/22 职场文书
中学生自我评价2015
2015/03/03 职场文书
旗帜观后感
2015/06/08 职场文书
2016年教师党员创先争优承诺书
2016/03/24 职场文书
最新农村养殖致富:资金投入较低的创业项目有哪些?
2019/09/26 职场文书
CentOS7 minimal 最小化安装网络设置过程
2022/12/24 Servers