小程序的globalData怎么用
发表于:2026-11-04 作者:千家信息网编辑
千家信息网最后更新 2026年11月04日,本篇内容介绍了"小程序的globalData怎么用"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!小程
千家信息网最后更新 2026年11月04日小程序的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安全错误
数据库的锁怎样保障安全
小米移动互联网科技园
中关村互联网科技集团
有马互联网科技
互联网未来科技
互联网与未来科技
互联网金融科技创新
宜安科技 互联网金融
狮子座互联网科技培训
华中科技有哪些互联网大佬
中国互联网有什么科技含量
顶级互联网科技成果有哪些
互联网科技人工智能实验室
西安小鹰速贷互联网科技有限公司
济南有互联网科技公司吗
互联网安防科技感
工业互联网科技创业
长沙渺峰互联网科技有限公司
网互联网络科技
互联网科技企业文化
山东亿川互联网科技有限责任公司
云南咖啡
互联网金融公司科技
互联网教育科技公司vipkid
银川新华互联网科技职业技术培训学校图片
汽车互联网创新科技园
工业互联网展湾科技股份有限公司
广州百诚互联网科技有限公司官网
半导体行业属于互联网高科技类吗
广州互联网高科技取餐柜
互联网公司属于科技吗