Skip to content
Mr.HopeMr.Hope
主页
  • 小程序
    • 小程序教程

      • 小程序指南
        • 代码构成
          • 宿主环境
            • 配置

              • 配置
                • 全局配置文档
                  • 页面配置
                    • 小程序内索引
                    • 框架

                      • 框架
                        • 场景值
                          • 小程序的运行环境
                            • 小程序运行机制
                              • 小程序更新机制
                              • 逻辑层

                                • 逻辑层
                                  • 生命周期 <Badge text="不需要立即掌握" />
                                    • 页面路由
                                      • 注册
                                        • App
                                          • 参数
                                            • Object object
                                              • onLaunch(Object object)
                                                • onShow(Object object)
                                                • onHide()
                                                  • onError(String error)
                                                    • onPageNotFound(Object object)
                                                      • onUnhandledRejection(Object object)
                                                        • onThemeChange(Object object)
                                                          • AppObject getApp(Object object)
                                                            • getApp 参数
                                                          • Page
                                                            • 小程序运行机制
                                                              • 模块化
                                                                • API

                                                                  • API <Badge text="重要" type="error" />
                                                                    • 路由 API
                                                                      • 数据缓存 API
                                                                        • 页面交互 API
                                                                          • 网络 API
                                                                            • 系统相关 API
                                                                          • 视图层

                                                                            • 视图层 View
                                                                              • WXSS
                                                                                • 事件
                                                                                  • 基础组件
                                                                                    • 动画
                                                                                      • WXS
                                                                                        • WXS 事件
                                                                                          • 简易双向绑定
                                                                                            • 获取界面上的节点信息
                                                                                              • 初始渲染缓存
                                                                                              • 能力

                                                                                                • 小程序能力
                                                                                                  • 网络
                                                                                                    • 存储
                                                                                                      • 文件系统
                                                                                                        • 调试
                                                                                                      • 开发者工具

                                                                                                        • 工具使用
                                                                                                          • 界面
                                                                                                            • 调试
                                                                                                              • npm 支持
                                                                                                                • 体验评分
                                                                                                                • 小程序框架

                                                                                                                  • 小程序框架说明
                                                                                                                    • 小程序简易开发指南
                                                                                                                      • 小程序页面参数表
                                                                                                                        • Page 插件
                                                                                                                          • YAML 文件案例
                                                                                                                          • 小程序分享

                                                                                                                            App

                                                                                                                            Mr.Hope2020年11月8日
                                                                                                                            • 小程序
                                                                                                                            大约 3 分钟

                                                                                                                            此页内容
                                                                                                                            • 参数
                                                                                                                              • Object object
                                                                                                                              • onLaunch(Object object)
                                                                                                                              • onShow(Object object)
                                                                                                                            • onHide()
                                                                                                                            • onError(String error)
                                                                                                                            • onPageNotFound(Object object)
                                                                                                                            • onUnhandledRejection(Object object)
                                                                                                                            • onThemeChange(Object object)
                                                                                                                            • AppObject getApp(Object object)
                                                                                                                              • getApp 参数

                                                                                                                            注册小程序。接受一个 Object 参数,其指定小程序的生命周期回调等。 重要

                                                                                                                            注意

                                                                                                                            App() 必须在 app.js 中调用,必须调用且只能调用一次。不然会出现无法预期的后果。

                                                                                                                            # 参数

                                                                                                                            # Object object

                                                                                                                            属性类型默认值必填说明最低版本
                                                                                                                            onLaunchfunction否生命周期回调——监听小程序初始化。
                                                                                                                            onShowfunction否生命周期回调——监听小程序启动或切前台。
                                                                                                                            onHidefunction否生命周期回调——监听小程序切后台。
                                                                                                                            onErrorfunction否错误监听函数。
                                                                                                                            onPageNotFoundfunction否页面不存在监听函数。1.9.90
                                                                                                                            onUnhandledRejectionfunction否未处理的 Promise 拒绝事件监听函数。2.10.0
                                                                                                                            onThemeChangefunction否监听系统主题变化2.11.0

                                                                                                                            | 其他 | any | | 否 | 开发者可以添加任意的函数或数据变量到 Object 参数中,用 this 可以访问 |

                                                                                                                            关于小程序前后台的定义和小程序的运行机制,请参考 运行机制。

                                                                                                                            App({
                                                                                                                              onLaunch(options) {
                                                                                                                                // Do something initial when launch.
                                                                                                                              },
                                                                                                                              onShow(options) {
                                                                                                                                // Do something when show.
                                                                                                                              },
                                                                                                                              onHide() {
                                                                                                                                // Do something when hide.
                                                                                                                              },
                                                                                                                              onError(msg) {
                                                                                                                                console.log(msg);
                                                                                                                              },
                                                                                                                              globalData: "I am global data",
                                                                                                                            });
                                                                                                                            

                                                                                                                            # onLaunch(Object object)

                                                                                                                            小程序初始化完成时触发,全局只触发一次。参数也可以使用 wx.getLaunchOptionsSyncopen in new window 获取。

                                                                                                                            参数: 与 wx.getLaunchOptionsSyncopen in new window 一致

                                                                                                                            # onShow(Object object)

                                                                                                                            小程序启动,或从后台进入前台显示时触发。也可以使用 wx.onAppShowopen in new window 绑定监听。

                                                                                                                            参数: 与 wx.onAppShowopen in new window 一致

                                                                                                                            # onHide()

                                                                                                                            小程序从前台进入后台时触发。也可以使用 wx.onAppHideopen in new window 绑定监听。

                                                                                                                            # onError(String error)

                                                                                                                            小程序发生脚本错误或 API 调用报错时触发。也可以使用 wx.onErroropen in new window 绑定监听。

                                                                                                                            参数: 与 wx.onErroropen in new window 一致

                                                                                                                            # onPageNotFound(Object object)

                                                                                                                            小程序要打开的页面不存在时触发。也可以使用 wx.onPageNotFoundopen in new window 绑定监听。注意事项请参考 wx.onPageNotFoundopen in new window。

                                                                                                                            参数: 与 wx.onPageNotFoundopen in new window 一致

                                                                                                                            示例代码:

                                                                                                                            App({
                                                                                                                              onPageNotFound(res) {
                                                                                                                                wx.redirectTo({
                                                                                                                                  url: "pages/...",
                                                                                                                                }); // 如果是 tabbar 页面,请使用 wx.switchTab
                                                                                                                              },
                                                                                                                            });
                                                                                                                            

                                                                                                                            # onUnhandledRejection(Object object)

                                                                                                                            基础库 2.10.0 开始支持

                                                                                                                            小程序有未处理的 Promise 拒绝时触发。也可以使用 wx.onUnhandledRejectionopen in new window 绑定监听。注意事项请参考 wx.onUnhandledRejectionopen in new window。

                                                                                                                            参数: 与 wx.onUnhandledRejectionopen in new window 一致

                                                                                                                            # onThemeChange(Object object)

                                                                                                                            基础库 2.11.0 开始支持

                                                                                                                            系统切换主题时触发。也可以使用 wx.onThemeChangeopen in new window 绑定监听。

                                                                                                                            参数: 与 wx.onThemeChangeopen in new window 一致

                                                                                                                            # AppObject getApp(Object object)

                                                                                                                            获取到小程序全局唯一的 App 实例。

                                                                                                                            # getApp 参数

                                                                                                                            Object object

                                                                                                                            属性类型默认值必填说明最低版本
                                                                                                                            allowDefaultbooleanfalse否在 App 未定义时返回默认实现。当 App 被调用时,默认实现中定义的属性会被覆盖合并到 App 中。一般用于独立分包2.2.4

                                                                                                                            示例代码:

                                                                                                                            // other.js
                                                                                                                            const appInstance = getApp();
                                                                                                                            console.log(appInstance.globalData); // I am global data
                                                                                                                            

                                                                                                                            注意

                                                                                                                            • 不要在定义于 App() 内的函数中,或调用 App 前调用 getApp() ,使用 this 就可以拿到 app 实例。
                                                                                                                            • 通过 getApp() 获取实例之后,不要私自调用生命周期函数。
                                                                                                                            编辑此页open in new window
                                                                                                                            上次编辑于: 2021/3/21 09:53:58
                                                                                                                            贡献者: Mr.Hope
                                                                                                                            上一页
                                                                                                                            注册
                                                                                                                            下一页
                                                                                                                            Page

                                                                                                                            预览:

                                                                                                                            0  字
                                                                                                                            评论
                                                                                                                            Powered by Waline v2.5.1
                                                                                                                            Copyright © 2019-present Mr.Hope