在此以插件开发中文章列表跳传文章详情为例。

1、首先在插件中的文章列表页面wxml中绑定跳转事件。

bindtap='url' data-id="{{item.article_id}}"

2、在文章列表页面js中接收事件,并触发冒泡事件。

/*** 跳转至详情*/url: function (e) {var eventDetail = {data: a.pdata(e).id,}// 触发事件的选项 bubbles是否冒泡,composed是否可穿越组件边界,capturePhase 是否有捕获阶段var eventOption = {composed: true}this.triggerEvent('click_btn', eventDetail, eventOption);},}

3、在插件调试的文章列表页面里获取插件层点击事件

小程序的文章列表.js代码

 1 var p = requirePlugin("myPlugin");
 2 Page({
 3   data: {
 4     show: false,
 5     ReachBottom: 0,
 6     PullDown: 0,
 7   },
 8
 9   onLoad: function () {
10     var that = this;
11     that.setData({
12       app_key: 'e31vry7y2j',
13       class_id:42,
14       ident: '',//article_1
15       wz_type: 'find',
16       show:true
17     })
18     var interval = setInterval(function () {
19       var arr = p.arr['article_' + that.data.app_key],
20       i=0;i++;
21       if (arr || i>10) {
22         clearInterval(interval);
23         wx.setNavigationBarTitle({
24           title: p.arr['article_' + that.data.app_key] ? p.arr['article_' + that.data.app_key] : '列表'
25         })
26       }
27     }.bind(this), 1000);
28   },
29   sub_fun: function (e) {
30     //console.log(e.detail.data);
31     var id = e.detail.data;
32     wx.navigateTo({
33       url: '/pages/detail/index?id='+id,
34     })
35   },
36   /**
37   * 下拉刷新
38   */
39   onPullDownRefresh: function () {
40     this.setData({
41       PullDown: this.data.PullDown + 1
42     })
43     wx.stopPullDownRefresh();
44   },
45   /**
46    *上拉加载
47    */
48   onReachBottom: function () {
49     this.setData({
50       ReachBottom: this.data.ReachBottom + 1
51     })
52   },
53 })

.json代码

{"navigationBarTitleText": "列表","usingComponents": {"list": "plugin://myPlugin/article_list"}
}

.wxml代码(bind:click_btn绑定插件层点击事件,在页面以sub_fun函数接收)

<view wx:if="{{show}}">
<list app_key="{{app_key}}" class_id="{{class_id}}" ident="{{ident}}" wz_type="{{wz_type}}" PullDown="{{PullDown}}" ReachBottom="{{ReachBottom}}"  bind:click_btn="sub_fun"/>
</view>

4、在页面完成跳转,跳到小程序的文章详情后,再传参给插件层的文章详情

小程序的详情页主要是把参数传到插件层(下面代码中的s_id)

<view wx:if="{{show}}">
<article_detail s_id="{{id}}" app_key="{{app_key}}"  ident="{{ident}}"  PullDown="{{PullDown}}" bind:suport="suport" bind:click_btn="sub_fun"/>
</view>

5、在插件中的文章详情内js中接收参数(用properties接收,并存在data中以供调用)

properties: {s_id: {type: String,value: '',observer: function (newVal, oldVal) {console.log('newVal:'+newVal)this.setData({ id: newVal })this.detail()}},},

关于Component构造器的使用方法(https://developers.weixin.qq.com/miniprogram/dev/framework/custom-component/component.html)

6、插件中的文章详情中js即可根据上面的参数来调取文章详情的接口

转载于:https://www.cnblogs.com/mverting/p/9051817.html

微信小程序插件内页面跳转和参数传递相关推荐

  1. 微信小程序两个页面跳转,传值

    微信小程序两个页面跳转,传值 在小程序界面,需要点击后跳转界面并且传递一个值. 具体实现如下:首先在wxml界面需要绑定事件,绑定需要传的值 a.wxml `<view bindtap=&quo ...

  2. 小程序内嵌h5页面分享_微信小程序webview内页面分享

    因为项目原因,之前在微信小程序内部使用 webview 嵌套了 h5 页面,现在要添加一个新的功能,用户在哪个页面进行了分享,被分享的用户从链接进来就跳转到哪个分享页面. 先了解一下 web-view ...

  3. 微信小程序webview内页面分享

    因为项目原因,之前在微信小程序内部使用 webview 嵌套了 h5 页面,现在要添加一个新的功能,用户在哪个页面进行了分享,被分享的用户从链接进来就跳转到哪个分享页面. 先了解一下 web-view ...

  4. 微信小程序系列3——页面跳转详解

    前言   首先,微信页面跳转的是一个页面栈进栈出栈的过程,也可以简单的理解对页面跳转的操作就是一个栈的操作. 微信小程序主要一下两类样式的跳转(JS.WXML控件): JS控制的跳转: navigat ...

  5. 【微信小程序】使用页面跳转并携带多个特定参数

    前言 在我们项目的搭建时常常会用到页面跳转,在微信小程序中也支持多个跳转类型.如(wx.switchTab\wx.reLauch\wx.redirectTo\wx.navigateTo\wx.navi ...

  6. 【微信小程序】在页面跳转时如何进行页面导航

    1. 什么是页面导航 页面导航指的是页面之间的相互跳转.例如,浏览器中实现页面导航的方式有如下两种: ① a链接 ② location.href 2. 小程序中实现页面导航的两种方式 ① 声明式导航 ...

  7. 微信小程序事件和页面跳转

    一.页面跳转 1.非TabBar页面 一个小程序拥有多个页面,我们通过wx.navigateTo进入一个新的页面 我们通过下边点击事件实现页面跳转进行代码实现及参考 wx.navigateBack() ...

  8. 微信小程序中的页面跳转(通过点击按钮、调用方法的形式)

    页面跳转用的多吧.tabBar的空间有限.通过路由的方式跳转时Vue中常用的方式.小程序采用类似的做法. – 这里通过给按钮绑定点击事件.调用方法.方法中实现页面跳转.(其它方式暂不考虑) 1.效果 ...

  9. 【微信小程序】实现页面跳转功能

最新文章

  1. 谈谈Android重打包--雷区
  2. C#下的插件体系探讨
  3. JSON API免费接口
  4. c# mvc html.beginform,asp.net-mvc – 使用Html.BeginForm()与自定义路由
  5. 【eclipse】安装 Gradle 插件
  6. Nacos配置中心-加载多配置集
  7. linux系统开机过程描述
  8. 关于 Unity WebGL 的探索
  9. ACM MM 2022 Call for Papers
  10. 集群类型以及提高服务器性能的技术概述
  11. python读取成功_Python如何从文件读取数据()
  12. K8S 通过 yaml 文件创建资源
  13. python虚拟环境中安装diango_django是要在虚拟环境激活后安装吗
  14. Caml 多表关联查询
  15. vue移动端音乐app-笔记
  16. Ubuntu和win10系统(N卡)
  17. linux 下的 source,sh,./三者区别
  18. 2020诺贝尔文学奖得主,死亡的诗歌
  19. java+英尺英寸,以英尺和英寸显示英尺的小数点(javascript)
  20. 外挂技术汇总及书籍推荐

热门文章

  1. 简单网络管理协议SNMP
  2. 虚拟语气和推测(二)
  3. 漫步最优化六——数学规划
  4. 谷歌浏览器设置定位_Chrome如何设置允许所有网站跟踪我的地理位置
  5. python做定时任务的方式及优缺点_Python3-定时任务四种实现方式
  6. codeblocks使用技巧
  7. CMFCButton使用简介
  8. 天池-街景字符编码识别4-模型训练与验证
  9. 【小程序】【Tips】【实践】Json 的对象 和 Json字符串 的区别和转换
  10. 分析 linux /var/log/messages,2009-11-30 15:30 Linux系统日志/var/log/messages (转)