![企业数字化转型:钉钉小程序开发权威指南](https://wfqqreader-1252317822.image.myqcloud.com/cover/339/43738339/b_43738339.jpg)
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
4.3.3 getApp方法
小程序提供了全局的getApp方法,该方法可以获取小程序实例,一般用于在各个子页面中获取顶层应用。
示例代码:
![](https://epubservercos.yuewen.com/26B254/23020651101673306/epubprivate/OEBPS/Images/42664_47_1.jpg?sign=1739517061-SflL1zoxp7MlgVYpc4BKSg4WeZus8qiY-0-786ed8aa49221d7cbff11fd24306c5ca)
注意
● App方法必须在app.js中调用,且不能调用多次。
● 不要在App方法内定义的函数中调用getApp方法,使用this就可以获取app实例。
● 不要在onLaunch里调用getCurrentPages,这个时候page还没有生成。
● 通过getApp方法获取实例之后,不要私自调用生命周期方法。
● 全局变量如果在一个页面中被改变,该操作会在所有页面中都有效。
全局的数据可以在App方法中设置,各个子页面通过getApp方法可以获取全局的应用实例。
app.js示例代码:
![](https://epubservercos.yuewen.com/26B254/23020651101673306/epubprivate/OEBPS/Images/42664_47_2.jpg?sign=1739517061-9YvdwaepR0WDi8wX8KVb5bHmLOsmUnR9-0-f02860facccd87fbb30933822610895c)
a.js示例代码:
![](https://epubservercos.yuewen.com/26B254/23020651101673306/epubprivate/OEBPS/Images/42664_47_3.jpg?sign=1739517061-p85yrAIrWSKg6nfXOS7ScMa2ryHiDZrM-0-b3ea38ba21c3a0096f8b183d6e6a2824)
b.js示例代码:
![](https://epubservercos.yuewen.com/26B254/23020651101673306/epubprivate/OEBPS/Images/42664_47_4.jpg?sign=1739517061-dx8h52Mtj90NIBu66nWnh5U6ko4UeHZo-0-29d4f056d1654e92f7c57a40a8185776)
![](https://epubservercos.yuewen.com/26B254/23020651101673306/epubprivate/OEBPS/Images/42664_48_1.jpg?sign=1739517061-NoLb7XSShckHkTdWyctbM2SteHWzAWY5-0-0f1937fd9e7fd6213c85a4d95148af25)
在上述代码中,a.js和b.js都声明了变量localValue,它们不会互相影响,因为各个脚本声明的变量和函数只在该文件中有效。