【app.js】配置及App函数说明


app.js中的App函数用来注册一个小程序或设置全局变量。

App函数:

     语法:App(Object)
     参数: Object json对象
     说明: App函数必须在app.js中调用,必须调用且只能调用

 

 1 App({
 2     
 3     /**
 4     * onLaunch(Object)
 5     * 说明: 小程序初始化完成时触发,全局只触发一次。
 6     * 参数: Object, 可从参数Object获取以下值:
 7     *      Object.path                      [String] 打开小程序的路径
 8     *      Object.query                     [String] 打开小程序的query
 9     *      Object.scene                     [Number] 打开小程序的场景值(值对应的场景:https://developers.weixin.qq.com/miniprogram/dev/framework/app-service/scene.html)
10     *      Object.shareTicket               [String] 转发分享信息,详见https://developers.weixin.qq.com/miniprogram/dev/api/share.html#wxgetshareinfoobject
11     *      Object.referrerInfo              [Object] 当场景为由从另一个小程序或公众号或App打开时,返回此字段
12     *      Object.referrerInfo.appId        [String] 来源小程序或公众号或App的 appId
13     *      Object.referrerInfo.extraData    [Object] 来源小程序传过来的数据,scene=1037或1038时支持
14     *
15     * 注意: referrerInfo、referrerInfo.appId、referrerInfo.extraData与scene场景值有关联
16     **/
17     onLaunch : function(Object){
18     },
19     
20     
21     /**
22     * onShow(Object)
23     * 说明: 小程序启动,或从后台进入前台显示时触发。
24     * 参数: Object, 与onLaunch参数相同
25     **/
26     onShow : function(Object){
27     },
28     
29     
30     /**
31     * onHide()
32     * 说明: 小程序从前台进入后台时触发。
33     **/
34     onHide : function(){
35     },
36     
37     
38     /**
39     * onError(error)
40     * 说明: 小程序发生脚本错误,或者 api 调用失败时触发。
41     * 参数: error [String] 错误信息,包含堆栈
42     **/
43     onError : function(error){
44     },
45     
46     
47     /**
48     * onPageNotFound(Object)
49     * 说明: 小程序要打开的页面不存在时触发。
50     * 参数: Object, 可从参数Object获取以下值:
51     *      Object.path           [String] 不存在页面的路径
52     *      Object.query          [Object] 打开不存在页面的 query
53     *      Object.isEntryPage    [Boolean] 是否本次启动的首个页面(例如从分享等入口进来,首个页面是开发者配置的分享页面)
54     *
55     * 注意:
56     *      1) 开发者可以在 onPageNotFound 回调中进行重定向处理(wx.redirectTo...),但必须在回调中同步处理,异步处理(例如 setTimeout 异步执行)无效。
57     *      2) 如果开发者没有添加 onPageNotFound 监听,当跳转页面不存在时,将推入微信客户端原生的页面不存在提示页面。
58     *      3) 如果 onPageNotFound 回调中又重定向到另一个不存在的页面,将推入微信客户端原生的页面不存在提示页面,并且不再回调 onPageNotFound。
59     **/
60     onPageNotFound : function(Object){
61         this.errorPages = 2  // 采用this修改全局变量errorPages值
62     },
63     
64     
65     /**
66     * 自定义其它类型数据,比如数组、JSON类
67     * 这类型数据为小程序所有页面共享
68     **/
69     errorPages : 0,
70     count : 1,
71     myArr : [1, 2, 3],
72     myJson : {
73         "title" : "hello world!"
74     }
75 })

 

getApp函数:

      语法: getApp(Object)

      说明: 获取App内定义的相关数据,比如上例中的 count

      参数: Object

               Object.allowDefault  [Boolean]  在 App 未定义时返回默认实现。当App被调用时,默认实现中定义的属性会被覆盖合并到App中。

      注意:

               1) 不要在定义于 App() 内的函数中调用 getApp() ,使用 this 就可以拿到 app 实例。

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

       示例:

比如要在页面:index内调用App的全局变量,index.js示例代码:

1 const app = getApp()
2 
3 Page({
4     onLoad: function () {
5         console.log( app.count );
6     }
7 
8 })

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM