声明和定义

  1. // in app.js
  2. globalData:{
  3. userInfo:null,
  4. test:"test"
  5. }

跨页面调用

  1. var app = getApp();//写在页面顶部page()外
  2. // in page.js
  3. app.globalData.test="123" //修改值直接使用“=”

example:

  1. //app.js
  2. App({
  3. //全局变量
  4. globalData:{
  5. userInfo:null,
  6. sysInfo:null,
  7. windowW:null,
  8. windowH:null
  9. },
  10. //启动
  11. onLaunch: function () {
  12. // 获取用户信息
  13. this.getUserInfo();
  14. this.getSys();
  15. },
  16. //获取用户信息
  17. getUserInfo:function(cb){
  18. var that = this
  19. wx.login({
  20. success: function () {
  21. wx.getUserInfo({
  22. success: function (res) {
  23. that.globalData.userInfo = res.userInfo
  24. console.log(res.userInfo);
  25. typeof cb == "function" && cb(that.globalData.userInfo)
  26. }
  27. })
  28. }
  29. })
  30. },
  31. //获取手机信息
  32. getSys:function() {
  33. var that = this;
  34. // 这里要非常注意,微信的scroll-view必须要设置高度才能监听滚动事件,所以,需要在页面的onLoad事件中给scroll-view的高度赋值
  35. wx.getSystemInfo({
  36. success: function(res) {
  37. console.log(res.model)
  38. console.log(res.pixelRatio)
  39. console.log(res.windowWidth)
  40. console.log(res.windowHeight)
  41. console.log(res.language)
  42. console.log(res.version)
  43. console.log(res.platform)
  44. //设置变量值
  45. that.globalData.sysInfo=res;
  46. that.globalData.windowW=res.windowWidth;
  47. that.globalData.windowH=res.windowHeight;
  48. }
  49. })
  50. }
  51. })