每个小程序都需要在 app.js 中调用 APP 函数注册小程序示例

<aside> 💡 注册 APP 时一般会做些什么?

  1. 判断小程序的进入场景
  2. 监听生命周期函数,在生命周期中执行对应的业务逻辑,比如在某个生命周期函数中进行登录操作或者请求网络数据
  3. 因为 APP 实例只有一个,并且是全局共享的(单例对象),所以我们可以将一些共享数据放在这里(数据不是响应式) </aside>
// app.js
// 页面中
// 1.初体验: favor
// 2.页面配置/下拉刷新/上拉加载: profile
// 3.在页面中, 使用app中的数据: order
App({
  // 作用二: 共享数据
  // 数据不是响应式, 这里共享的数据通常是一些固定的数据
  globalData: {
    token: "",
    userInfo: {}
  },
  onLaunch(options) {
    // 0.从本地获取token/userInfo
    const token = wx.getStorageSync("token")
    const userInfo = wx.getStorageSync("userInfo")

    // 1.进行登录操作(判断逻辑)
    // if (!token || !userInfo) {
    //   // 将登录成功的数据, 保存到storage
    //   console.log("登录操作");
    //   wx.setStorageSync("token", "kobetoken")
    //   wx.setStorageSync("userInfo", { nickname: "kobe", level: 100 })
    // }

    // 2.将获取到数据保存到globalData中
    this.globalData.token = token
    this.globalData.userInfo = userInfo

    // 3.发送网络请求, 优先请求一些必要的数据
    // wx.request({ url: 'url'})
  },
  onShow(options) {
    // 作用一: 判断小程序的进入场景
    console.log("onShow:", options);
  },
  onHide() {
    console.log("onHide");
  }
})