小程序 全局数据共享 getApp()

在小程序中,可以通过 getApp() 方法获取到小程序全局唯一的App实例 因此在App()

方法中添加全局共享的数据、方法,从而实现页面、组件的数据传值

在 app.js 文件中定义

javascript 复制代码
App({
  // 全局共享的数据
  globalData:{
    token:''
  },
  // 全局共享的方法
  setToken(token){
    // 如果想获取token,可以使用 this 的方法进行获取
    this.globalData.token = token
	// 在 App() 方法中如果想获取 App() 实例,可以通过 this 的方式进行获取
	// 不能通过 getApp() 方法获取
  }
})

使用 需要在登录页面 先 setToken

.wxml 文件

javascript 复制代码
<button type="warn" plain bindtap="login">登录</button>

.js 文件

javascript 复制代码
// getApp()方法用来获取全局位移的 App()实例
const appInstance = getApp()
Page({
  login(){
  // 不要通过 app 实例调用钩子函数
  	appInstance.setToken("aaaaaaaaaa")
 }
})

然后 再其它页面 可获取 全局存入的token

javascript 复制代码
const appInstance=getApp()
Page({
  onLoad(options) {
    console.log(appInstance)
  },
})

注意事项

1.不要再App() 方法中使用 getApp() 使用 this 就可以拿到 app实例

2.通过 getApp() 获取实例之后,不要私自调用生命周期函数

相关推荐
AC赳赳老秦29 分钟前
CSDN 技术社区数据采集:OpenClaw 抓取公开技术热帖,生成领域技术热点周报
java·大数据·前端·数据库·python·php·openclaw
结网的兔子37 分钟前
【前端开发】Web端迁移至 uni-app 及鸿蒙扩展方案对比
前端·uni-app·harmonyos
水瓶夜之1 小时前
.NET 中的新增功能系列文章——.NET SDK中的新增功能
前端·chrome·.net
笨笨狗吞噬者2 小时前
VS Code 内置浏览器打开网页
前端
SamChan902 小时前
WebSocket实现PDF翻译进度实时推送:Go后端+React前端的完整方案
前端·websocket·pdf·c#·react·机器翻译
甲维斯2 小时前
DeepSeekFlash前端依旧拉垮,而且变慢了很多!
前端·人工智能
奈斯先生Vector2 小时前
大模型 Agentic Workflow 架构解构:异构 API 调度与 Token 路由的多模态系统设计
开发语言·前端·架构·prompt·aigc·音视频
海带紫菜菠萝汤2 小时前
FFmpeg.wasm 实践:在浏览器中运行 FFmpeg 的能力边界与性能瓶颈
前端·javascript·ffmpeg·音视频·wasm
名字还没想好☜2 小时前
React 受控输入框光标跳到末尾:格式化输入时的 selection 丢失 bug 与修复
前端·javascript·react.js·bug·react·next.js
Access开发易登软件2 小时前
Access 怎么做前后端分离?用 Web API 读写 SQL Server
前端·数据库·人工智能·microsoft·excel·access