小程序 — App函数

116 阅读2分钟

App函数

每个小程序都需要在app.js中调用App函数注册小程序实例。在注册时, 可以绑定对应的生命周期函数。在生命周期函数中, 执行对应的代码。在注册App时,我们一般会判断小程序的进入场景;监听生命周期函数,在生命周期中执行对应的业务逻辑,比如在某个生命周期函数中进行登录操作或者请求网络数据;因为App()实例只有一个,并且是全局共享的(单例对象),所以我们可以将一些共享数据放在这里。

判断打开场景

小程序的打开场景较多,常见的打开场景有群聊会话中打开、小程序列表中打开、微信扫一扫打开、另一个小程序打开。那么如何确定场景呢?在onLaunch和onShow生命周期回调函数中,会有options参数,其中有scene值。

定义全局App的数据

可以在Object中定义全局App的数据。

globalData: {
    token: "",
    userInfo: {}
}

定义的数据可以在其他任何页面中访问。

image.png

onLoad() {
    const app = getApp()
    console.log(app.globalData.token);
    console.log(app.globalData.user);
}

生命周期函数

在生命周期函数中,完成应用程序启动后的初始化操作,比如登录操作、读取本地数据、求整个应用程序需要的数据等。

Page函数

小程序中的每个页面, 都有一个对应的js文件, 其中调用Page函数注册页面实例。在注册时, 可以绑定初始化数据、生命周期回调、事件处理函数等。

注册一个Page页面时,我们一般需要做以下事情:

  • 在生命周期函数中发送网络请求,从服务器获取数据;
  • 初始化一些数据,以方便被wxml引用展示;
  • 监听wxml中的事件,绑定对应的事件函数;
  • 其他一些监听(比如页面滚动、上拉刷新、下拉加载更多等);