微信小程序中组件传参(二):getApp()获取app实例 获取app.js中所有的变量和方法

113 阅读1分钟

注意事项

app实例中可以获取到app.js中所有的变量和方法。

  • App()方法中通过this就可以获取到app实例。
  • Page()Component()方法中需要在构造方法外定义一个变量接收getApp()返回的实例如:const appInstance = getApp()
  • 注意: 通过getApp()获取实例之后,不要私自调用生命周期函数。

示例

App({
  // 全局共享的数据
  globalData: {
    token: ''
  },
  data: {
    ttoken: ''
  },
  setToken(token) {
    // 在App()方法中获取app实例可以通过this获取
    console.log(this);
    console.log(this.globalData, this.data, token);
    this.globalData.token = token;
    this.data.ttoken = token;
    console.log(this.globalData, this.data, token);
  },
})
const appInstance = getApp()
Page({
  onClickGetApp() {
    console.log(appInstance);
    appInstance.setToken('收到粉红色的讲课费火炬大厦放大手机卡号发双打卡');
  },
})
<button type="warn" plain bind:tap="onClickGetApp">获取app实例</button>

image.png