微信小程序学习笔记之跳转页面、传递参数获得数据操作图文详解


Posted in Javascript onMarch 28, 2019

本文实例讲述了微信小程序学习笔记之跳转页面、传递参数获得数据操作。分享给大家供大家参考,具体如下:

前面一篇介绍了微信小程序表单提交与PHP后台数据交互处理。现在需要实现点击博客标题或缩略图,跳转到博客详情页面。

微信小程序学习笔记之跳转页面、传递参数获得数据操作图文详解

开始想研究一下微信小程序的web-view组件跳转传参,把网页嵌入到小程序,结果看到官方文档的一句话打消了念头,因为没有认证......

微信小程序学习笔记之跳转页面、传递参数获得数据操作图文详解

【方法一 使用navigator组件跳转传参】

前台博客列表页面data.wxml:(后台数据交互参考上一篇)

<view wx:for="{{artinfo}}" wx:for-item="artinfo">
  <view>
    <navigator url="/pages/detial/detial?article_id={{artinfo.article_id}}" >
     {{artinfo.article_title}}
    </navigator>
  </view>
  <navigator url="/pages/detial/detial?article_id={{artinfo.article_id}}" >
   <image src="{{artinfo.thumbnail}}"></image>
  </navigator>
</view>

前台博客详情页面detail.js:

Page({
 onLoad: function (options) { //options:页面跳转所传的参数
  var that = this
  wx.request({
   url: 'https://www.msllws.top/Getdata/detial',
   data: {
    'article_id': options.article_id
   },
   method: 'POST',
   header: {
    'Content-Type': 'application/x-www-form-urlencoded'
   },
   success: function (res) {
    if (res.data.state == 1) {
     that.setData({
      artinfo: res.data.data
     })
    }else{
     wx.showToast({
      title: res.data.msg
     });
    }
   }
  })
 }
})

前台博客详情页面detail.wxml:

<view>{{artinfo.article_title}}</view>
<view>———————————————————————————</view>
<rich-text nodes="{{artinfo.article_content}}"></rich-text>

后台获取博客内容接口:(tp5)

public function detial()
 { 
   $arr = array('state'=>0,'msg'=>'','data'=>array());
   $article_id = $_POST['article_id'];
   if($article_id){
     $whe['article_id'] = $article_id;
     $artinfo = db('article')->field('`article_title`,`article_content`')->where($whe)->find();
     if($artinfo){
       $arr['state'] = 1;
       $arr['msg'] = 'success';
       $arr['data'] = $artinfo;
     }else{
       $arr['msg'] = '没有信息';
     }
   }else{
     $arr['msg'] = '参数错误';
   }
   echo json_encode($arr);die;
 }

实现效果如下:

微信小程序学习笔记之跳转页面、传递参数获得数据操作图文详解

【方法二 使用wx.navigateTo API跳转传参】

前台博客列表页面data.wxml:

(data-xxx:自定义参数属性,catchtap:绑定点击事件)

<view wx:for="{{artinfo}}" wx:for-item="artinfo">
  <view data-article_id="{{artinfo.article_id}}" catchtap="showDetial">
     {{artinfo.article_title}}
   </view>
  <view data-article_id="{{artinfo.article_id}}" catchtap="showDetial">
   <image src="{{artinfo.thumbnail}}"></image>
  </view>
</view>

前台博客列表页面data.js:

Page({
 onLoad: function () {
  var that = this
  wx.request({
   url: 'https://www.msllws.top/Getdata',
   headers: {
    'Content-Type': 'application/json'
   },
   success: function (res) {
    that.setData({
     artinfo: res.data
    })
   }
  })
 },
 showDetial: function (e) {
  var article_id = e.currentTarget.dataset.article_id;
  wx.navigateTo({
   url: '/pages/detial/detial?article_id=' + article_id
  })
 }
})

其他与方法一相同,可实现与方法一相同跳转传参。

希望本文所述对大家微信小程序开发有所帮助。

Javascript 相关文章推荐
Javascript 表单之间的数据传递代码
Dec 04 Javascript
node.js 一个简单的页面输出实现代码
Mar 07 Javascript
javascript中将Object转换为String函数代码 (json str)
Apr 29 Javascript
jQuery获取CSS样式中的颜色值的问题,不同浏览器格式不同的解决办法
May 13 Javascript
使用focus方法让光标默认停留在INPUT框
Jul 29 Javascript
Spring mvc 接收json对象
Dec 10 Javascript
Angular 4 指令快速入门教程
Jun 07 Javascript
Bootstrap 模态框(Modal)带参数传值实例
Aug 20 Javascript
原生JS实现的放大镜特效示例【测试可用】
Dec 08 Javascript
微信小程序时间轴实现方法示例
Jan 14 Javascript
JavaScript中this函数使用实例解析
Feb 21 Javascript
解决js中的setInterval清空定时器不管用问题
Nov 17 Javascript
微信小程序学习笔记之表单提交与PHP后台数据交互处理图文详解
Mar 28 #Javascript
深入理解es6块级作用域的使用
Mar 28 #Javascript
详解在网页上通过JS实现文本的语音朗读
Mar 28 #Javascript
详解React服务端渲染从入门到精通
Mar 28 #Javascript
微信小程序学习笔记之函数定义、页面渲染图文详解
Mar 28 #Javascript
JavaScript刷新页面的几种方法总结
Mar 28 #Javascript
Vue批量图片显示时遇到的路径被解析问题
Mar 28 #Javascript
You might like
php实现猴子选大王问题算法实例
2015/04/20 PHP
php实现搜索一维数组元素并删除二维数组对应元素的方法
2015/07/06 PHP
如何让您的中波更粗更长 - 中波框形天线制作
2021/03/10 无线电
PNGHandler-借助JS让PNG图在IE下实现透明(包括背景图)
2007/08/31 Javascript
js返回上一页并刷新代码整理
2012/12/21 Javascript
javascript的内存管理详解
2013/08/07 Javascript
JQuery中使用.each()遍历元素学习笔记
2014/11/08 Javascript
JavaScript采用递归算法计算阶乘实例
2015/08/04 Javascript
JS实现n秒后自动跳转的两种方法
2020/11/30 Javascript
JQuery Ajax动态加载Table数据的实例讲解
2018/08/09 jQuery
nodejs一个简单的文件服务器的创建方法
2019/09/13 NodeJs
Vue开发中常见的套路和技巧总结
2020/11/24 Vue.js
[02:27]2018DOTA2亚洲邀请赛赛前采访-OpTic
2018/04/03 DOTA
[33:33]完美世界DOTA2联赛PWL S2 FTD.C vs SZ 第二场 11.27
2020/11/30 DOTA
Python解析网页源代码中的115网盘链接实例
2014/09/30 Python
分析Python中设计模式之Decorator装饰器模式的要点
2016/03/02 Python
Python的requests网络编程包使用教程
2016/07/11 Python
利用Python爬取可用的代理IP
2016/08/18 Python
python使用threading获取线程函数返回值的实现方法
2017/11/15 Python
numpy.random.shuffle打乱顺序函数的实现
2019/09/10 Python
python sorted方法和列表使用解析
2019/11/18 Python
Python常用模块sys,os,time,random功能与用法实例分析
2020/01/07 Python
使用python实现时间序列白噪声检验方式
2020/06/03 Python
Python定义一个Actor任务
2020/07/29 Python
django教程如何自学
2020/07/31 Python
Python 的 f-string 可以连接字符串与数字的原因解析
2021/02/20 Python
Hawes & Curtis官网:英国经典品牌
2019/07/27 全球购物
人力资源管理专业毕业生自我评价
2013/09/21 职场文书
医学生个人求职信范文
2013/09/24 职场文书
中学老师的自我评价
2013/11/07 职场文书
《七颗钻石》教学反思
2014/02/28 职场文书
优秀的个人求职信范文
2014/05/09 职场文书
2014组织生活会方案
2014/05/19 职场文书
2014年学生会生活部工作总结
2014/11/07 职场文书
MySQL 查询速度慢的原因
2021/05/25 MySQL
Mysql中一千万条数据怎么快速查询
2021/12/06 MySQL