范围:深圳亚博app开发,软件定制开发,亚博app软件开发公司,深圳软件外包公司.TEL:3447249690
当前位置:首页 > app小程序

亚博-利用JS库解决小程序跨页传递消息和数据问题

07-10 亚博APP
摘要:因为微信小法式wx.navigateBack 方式其实不撑持返回传值,致使页面在返回后,不克不及便利地即时更新数据。

因为微信小法式wx.navigateBack 方式其实不撑持返回传值,致使页面在返回后,不克不及便利地即时更新数据。

一.需求阐发

此类需求大要意思是:A 页面进入 B 页面,B 页面返回并传值给 A或在B页面触发事务时,A页面也有事务触发改变。

/

营业阐发

第一种:操纵微信的 wx.setStorage,将数据缓存在小法式实例内。从 B 页面返回 A 页面时,B 页面先将数据缓存;然后在 A 页面的 onshow 方式里,挪用 wx.getStorage 读取缓存来实现。但为往后保护带来年夜量隐患。(用全局变量方式近似)

第二种:获得前一个 page 实例的方式,也能够实现此功能。部门代码以下:

/

这类方式的短处:由于进入 B 页面的进口多是良多个。如许做,可能会致使获得到的页面实例不准确。

二.方式介绍

下面进入正题介绍onfire.js()

onfire.js 是一个很简单的事务分发 JavaScript 库(仅仅 0.9kb),简练适用。它可以利用在:

1.简单的事务分发。

2.在 React、Vue.js、Angular 顶用在跨组件的轻量级实现。

3.事务定阅和发布。

利用思绪:(做过移动端开辟的都知道,近似在iOS的通知和安卓的广播)

a.A 页面先定阅一个事务,并界说处置方式;

b.从 B 页面返回时,发送动静;

c.A 页面卸载时,消除定阅。

我的利用方式为:

A 页面代码:

/

我们可以在 A 页面直接挪用 onfire.on 方式,定阅一个名字为 key 的动静。在上面的代码中,动静附带的参数无传参。 假如需要传参的话,直接在 function 里增添参数便可,例如亚博

/

需要留意的是,必然要在 onUnload 里(在页面被封闭时)打消定阅动静,并打消绑定 eventObj。

B 页面里代码在回调的处所插手以下代码:

/

三.阐发库代码

从代码中可以看出定阅 on 方式的时辰,现实挪用 _bind 方式。该方式操纵一个二维数组,来存储定阅的对象。

/

而 fire 发送动静方式的本色,是挪用 _fire_func 方式,经由过程名字(key)来遍历定阅者,然后通知定阅者。挪用un方式,经由过程名字(key)来遍历定阅者,找到后移除。

微信小法式专题保举:门票小法式页面开辟

版权保护: 本文由 亚博app开发 原创
转载请保留链接: http://www.jiayuanLi.com

关于我们      深圳亚博app定制开发软件有限公司,自2013年成立以来,为上千家企业提供软件外包、系统软件开发、亚博app开发、微信公众号开发、深圳亚博小程序开发等各种优秀的软件定制开发服务.关键词:软件外包公司、手机软件开发、app制作开发、手机亚博app开发、小程序开发公司【TEL】:3447249690 微信:3447249690 QQ:3447249690
  • 1578文章总数
  • 13访问次数
  • 建站天数