app.js 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148
  1. require("./utils/string.js")
  2. const ald = require('./libs/ald-stat.js')
  3. import {
  4. updataStorageData
  5. } from './utils/storage.js'
  6. var startTime = Date.now(); //启动时间
  7. App({
  8. onLaunch: function(options) {
  9. this.aldstat.sendEvent('小程序的启动时长', {
  10. time: Date.now() - startTime
  11. })
  12. // 小程序版本更新
  13. if (wx.getUpdateManager) {
  14. const updateManager = wx.getUpdateManager()
  15. updateManager.onCheckForUpdate((res) => {
  16. // 请求完新版本信息的回调
  17. console.log(res.hasUpdate)
  18. })
  19. updateManager.onUpdateReady(() => {
  20. wx.showModal({
  21. title: '更新提示',
  22. content: '新版本已经准备好,是否重启应用?',
  23. success: (res) => {
  24. if (res.confirm) {
  25. // 新的版本已经下载好,调用 applyUpdate 应用新版本并重启
  26. wx.removeStorageSync("user_id");
  27. wx.removeStorageSync("member_id");
  28. wx.removeStorageSync("user_token");
  29. wx.removeStorageSync("userInfo");
  30. this.globalData.userId = '';
  31. this.globalData.userToken = '';
  32. this.globalData.memberId = '';
  33. this.globalData.userInfo = null;
  34. updateManager.applyUpdate()
  35. }
  36. }
  37. })
  38. })
  39. updateManager.onUpdateFailed(function() {
  40. // 新版本下载失败
  41. })
  42. } else {
  43. wx.showModal({
  44. title: '提示',
  45. content: '当前微信版本过低,部分功能可能无法使用,请升级到最新微信版本后重试。'
  46. })
  47. }
  48. },
  49. onShow(options) {
  50. console.log("rr", options)
  51. //群聊信息
  52. if (options.shareTicket) {
  53. this.getShareInfo(options.shareTicket)
  54. }
  55. wx.onAppRoute((data) => {
  56. const route = getCurrentPages();
  57. const page = route[route.length - 1];
  58. console.log(data)
  59. console.log(page)
  60. if (!page.data.hasShare) {
  61. let _str = '';
  62. for (let key in data.query) {
  63. _str += `${key}=${data.query[key]}&&`
  64. }
  65. const shareTitle = this.shareTitle[page.route]
  66. page.onShareAppMessage = function(e) {
  67. return {
  68. path: `/${page.route}?${_str}`,
  69. // imageUrl: page.data.shareImageUrl || '/images/happyjob/detail_share.jpg',
  70. title: shareTitle || '开心工作'
  71. }
  72. }.bind(page)
  73. }
  74. })
  75. },
  76. shareTitle: {
  77. },
  78. globalData: {
  79. openId: '',
  80. userInfo: null,
  81. userId: '',
  82. userToken: '',
  83. memberId: "",
  84. sessionKey: '',
  85. city: updataStorageData('city') || '无锡'
  86. },
  87. //页面分享
  88. onShareAppMessage: function() {
  89. wx.showShareMenu({
  90. withShareTicket: true,
  91. success: (res) => { // 成功后要做的事情
  92. console.log(res)
  93. },
  94. fail: function(res) {
  95. console.log(res)
  96. }
  97. })
  98. },
  99. //获取群聊分享信息
  100. getShareInfo(shareTicket) {
  101. wx.getShareInfo({
  102. shareTicket: shareTicket,
  103. success: (res) => {
  104. //需后台解析数据 encryptedData iv
  105. console.log(res)
  106. },
  107. fail: function(res) {
  108. console.log(res)
  109. },
  110. complete: function(res) {}
  111. })
  112. },
  113. // 跳转登录页面
  114. goLogin() {
  115. wx.navigateTo({
  116. url: '/pages/login/login',
  117. })
  118. },
  119. watermark(height) {
  120. const system = wx.getSystemInfoSync();
  121. const _height = system.windowHeight > height ? system.windowHeight : height;
  122. const row = Math.floor(_height * (750 / system.windowWidth) / 200);
  123. const json = [];
  124. for (let i = 0; i < row; i++) {
  125. json.push([])
  126. let _tmp = i % 2;
  127. if (_tmp) {
  128. for (let j = 0; j < 2; j++) {
  129. json[i].push({
  130. top: 30 + 200 * i,
  131. left: 160 + 235 * j
  132. })
  133. }
  134. } else {
  135. for (let j = 0; j < 3; j++) {
  136. json[i].push({
  137. top: 30 + 200 * i,
  138. left: 30 + 250 * j
  139. })
  140. }
  141. }
  142. }
  143. return json;
  144. }
  145. })