![企业数字化转型:钉钉小程序开发权威指南](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=1739547394-l1WJs9XvbldwXIWyN7YaaR0kueei2m3a-0-c84dc5728c5b0d16cd16a03269e3a542)
注意
● 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=1739547394-fxrOq7fJTdD6bq9W8qfEE89Yn7MIs1yX-0-85f8997977ebfe6fcb81e15045caf6bc)
a.js示例代码:
![](https://epubservercos.yuewen.com/26B254/23020651101673306/epubprivate/OEBPS/Images/42664_47_3.jpg?sign=1739547394-UMWXJ9L0fJpRtxnwr7Wmoa1wnenQ8Eks-0-aa2cfac8799eac94bce5b88aee3f2132)
b.js示例代码:
![](https://epubservercos.yuewen.com/26B254/23020651101673306/epubprivate/OEBPS/Images/42664_47_4.jpg?sign=1739547394-QbyFHZMo6cA2uMm3Cx6h02U7ubgxdVRE-0-e5eca4affdd5d6d43ed14b1471d3c346)
![](https://epubservercos.yuewen.com/26B254/23020651101673306/epubprivate/OEBPS/Images/42664_48_1.jpg?sign=1739547394-PKH3mYCUQrZsfDLOv8fzppK5LIJqSgvr-0-29acdca11396b9086c2e000114eb620c)
在上述代码中,a.js和b.js都声明了变量localValue,它们不会互相影响,因为各个脚本声明的变量和函数只在该文件中有效。