小程序的globalData怎么用
发表于:2025-02-03 作者:千家信息网编辑
千家信息网最后更新 2025年02月03日,本篇内容介绍了"小程序的globalData怎么用"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!小程
千家信息网最后更新 2025年02月03日小程序的globalData怎么用
本篇内容介绍了"小程序的globalData怎么用"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
小程序中,除了每个页面有自己的 data,还有个全局数据存储地方:globalData,获取方式如下:
let globalData = getApp().globalData
实际业务代码中总会遇到这种情况:写着写着发现需要用全局数据,但是不能直接就在当前函数里直接写上面的一段代码,因为要和别的函数共用,所以返回 js 文件顶部添加一段代码,再返回刚刚断掉的地方继续写,类似这样:
// 省略12行let globalData = getApp().globalData// 省略15行Page({ data: { ... } //.. 省略863行 onButtonTap(e) { // ... let myData = globalData.myData // ... }})
经过这么一折腾,可能刚刚的代码思路都没了。那能不能直接在想用的函数里直接方便的获取这个 globalData 呢?比如:
// 省略27行Page({ data: { ... } //.. 省略863行 onButtonTap(e) { // ... let myData = this.globalData.myData // ... }})
或者换种方式获取和设置 myData:
let myData = this.$global('myData')// ...this.$global('myData', 2)
实现 global 方法
function global(name, value) { var globalData = getApp().globalData var data = {} // this.$global() if (arguments.length === 0) { return globalData } // this.$global('myData') if (arguments.length === 1) { if (is.string(name)) { return globalData[name] } // this.$global({ // name: 1 // }) if (is.object(name)) { data = name } } // this.$global('myData', 2) if (arguments.length === 2) { data[name] = value } return extend(data, data)}
其中,is.string 和 is.object 是类型判断函数。简单实现了多种操作 globalData 的方法,详细见注释。
挂载到 this
函数有了,那么怎么挂在到小程序页面的 this 中呢,看过前几篇可能知道,要对小程序原有的 Page 函数进行改造。
有两种方式,一种是直接添加到 config 里:
var originPage = Pagevar global = require('../utils/global')function MyPage(config) { // ... config.$global = global // ... originPage(config)}function page (config) { return new MyPage(config)}
或者在代理后的 onLoad 函数里定义:
var originPage = Pagevar global = require('../utils/global')function MyPage(config) { this.watch = config.watch this.lifetimeBackup = { onLoad: config.onLoad } config.onLoad = function(options) { this.$global = global // 其他代码 this.lifetimeBackup.onLoad.call(this, options) } // ... originPage(config)}
"小程序的globalData怎么用"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!
函数
程序
代码
方式
全局
内容
地方
实际
情况
数据
方法
更多
知识
页面
实用
学有所成
接下来
业务
困境
多种
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全e起答第二期火热来袭
网络安全资讯网站
航天联志服务器远程管理卡
西安来实慧网络技术有限公司
互联网属于高科技领域吗
数据库给多个项目用
淄博零壹互联网科技有限公司
网络安全赌博宣传语
深圳停车系统软件开发报价
超强服务器
与服务器的网络已中断
下面哪个不是关系数据库
信用卡逾期数据报告数据库
暗黑2重制版美服服务器
安装与配置ftp服务器
数据库删除数据语句
网络安全风险管理项目
网络技术员女生
ps4怎么开启proxy服务器
公安网络安全技术支持队伍
网络安全防诈骗主题班会记录内容
工作在传输层的安全服务器叫什么
什么数据库最安全
长春网络技术诚信服务
从数据库获取数据导入下拉框
数据库外键在哪
软件开发分摊比例
sql server数据库设计
对外服务器地址
微服务数据库拆分