[发明专利]一种小程序全局实时组件的实现方法有效
| 申请号: | 202011354602.9 | 申请日: | 2020-11-26 |
| 公开(公告)号: | CN112486551B | 公开(公告)日: | 2022-02-01 |
| 发明(设计)人: | 李凡 | 申请(专利权)人: | 四川长虹电器股份有限公司 |
| 主分类号: | G06F8/656 | 分类号: | G06F8/656;G06F11/30 |
| 代理公司: | 四川省成都市天策商标专利事务所(有限合伙) 51213 | 代理人: | 郭会 |
| 地址: | 621000 四*** | 国省代码: | 四川;51 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 程序 全局 实时 组件 实现 方法 | ||
本发明提出了一种小程序全局实时组件的实现方法。在全局js中定义监听列表对象和一个用于新增独立监听的方法,然后设置公共监听方法和设置用于数据实时更新的定时方法。在小程序加载时,onLaunch周期内调用公共监听方法。当组件触发attached周期时,调用全局js中的监听新增方法,设置专属监听并获取监听结果后同步更新组件值。页面中引入组件的同时通过if控制组件加载和销毁。通过上述流程,实现一种逻辑和流程更为简洁的全局监听功能组件,解决了小程序全局数据无法双向数据绑定的同时极大地优化全局组件逻辑的性能。
技术领域
本发明涉及计算机技术领域,尤其涉及一种小程序全局实时组件的实现方法。
背景技术
计算机软件技术的飞速发展,各类软件产品的出现满足了人们在不同领域的不同需求。随着用户需求的不断升级和深入,如何在完成需求的同时实现更优化的用户体验也极其重要。对于产品全局组件的需求,通常采用组件化开发的方式,设置组件为共有组件内部子组件,从而实现全局展示的效果。然而微信小程序暂不支持组件化开发方式,因此对于共用组件,通常采用组件封装的方式,通过组件属性进行页面间数据的传输。然而小程序的数据单向绑定,造成全局数据无法在组件和页面间进行实时更新,当大量页面进行组件引用时,页面间的数据更新过程也变得十分繁琐和冗余。因此,发明一种实时方法更简洁,更为高性能的方法变得极为重要。
发明内容
实现一种逻辑和流程更为简洁的全局监听功能组件,解决小程序全局数据无法双向数据绑定的同时极大地优化全局组件逻辑的性能。
本发明提出了一种小程序全局实时组件的实现方法。在全局js中定义监听列表对象和一个用于新增独立监听的方法,然后设置公共监听方法和设置用于数据实时更新的定时方法。在小程序加载时,onLaunch周期内调用公共监听方法。当组件触发attached周期时,调用全局js中的监听新增方法,设置专属监听并获取监听结果后同步更新组件值。页面中引入组件的同时通过if控制组件加载和销毁。从而实现一种逻辑和流程更为简洁的全局监听功能组件。具体技术方案如下:
1、全局js中:
(1)采用轮询方式对全局数据进行更新操作。定义一个定时启用方法,方法内部通过设置定时器执行数据实时更新操作。
(2)定义一个初始化为空的监听列表对象和一个用于新增独立监听的方法。监听新增方法中传入参数key和method,并将method赋给监听列表对象中key。
(3)设置公共监听方法,监听方法set中,遍历监听列表对象,当监听列表对象中key存在赋值时,将set中的value值作为参数,传给监听列表对象中对应的函数key。
(4)在小程序加载时,onLaunch周期内调用公共监听方法。
(5)设置监听卸载方法。方法中,移除定时器,并将监听列表置空。
2、全局组件内部js:
当组件触发attached周期时,调用全局js中的监听新增方法。方法中,参数key设置特定标识,method参数为组件内部定义方法,当监听触发时,该方法执行,可用于全局组件获取监听结果并同步更新组件值。
3、页面中:
(1)json和wxml文件引入全局组件,同时通过if控制组件加载。当页面触发onShow生命周期时加载组件,当生命周期onHide时销毁组件。
(2)页面中对于全局数据的监听,在页面触发onLoad生命周期时,调用全局监听新增方法,传入特定标识key和用于获取更新的页面内部method方法。
(3)当存在页面卸载返回小程序初始化页面时,onUnload生命周期中调用全局js监听移除方法,将全部监听移除。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于四川长虹电器股份有限公司,未经四川长虹电器股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011354602.9/2.html,转载请声明来源钻瓜专利网。





