App.vue 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. <template>
  2. <page style="color: #007AFF;"></page>
  3. </template>
  4. <script>
  5. export default {
  6. globalData: {
  7. detail: null,
  8. choosedAddress: null,
  9. topHeight: 0,
  10. },
  11. async onLaunch() { //app 初始化
  12. let f = uni.canIUse('getUpdateManager') // 获取小程序更新机制兼容
  13. if (f) {
  14. const _u = uni.getUpdateManager()
  15. _u.onCheckForUpdate(res => { // // 请求完新版本信息的回调
  16. console.log('版本信息', res.hasUpdate)
  17. if (res.hasUpdate) { // 是否有新的版本
  18. _u.onUpdateReady(() => { // 当新版本下载完成,会进行回调
  19. uni.showModal({
  20. title: '更新提示',
  21. content: '新版本已发布,请重启当前应用!',
  22. showCancel: false,
  23. success(c_res) {
  24. if (c_res.confirm) {
  25. _u.applyUpdate() // 当新版本下载完成,调用该方法会强制当前小程序应用上新版本并重启
  26. }
  27. }
  28. })
  29. })
  30. }
  31. })
  32. _u.onUpdateFailed(() => { // 当新版本下载失败,会进行回调
  33. uni.showModal({
  34. title: '发现新版本',
  35. content: '请删除当前小程序,重新搜索打开'
  36. })
  37. })
  38. }
  39. uni.loading = () => uni.showLoading({
  40. mask: true,
  41. title: '加载中'
  42. })
  43. if (!uni.getStorageSync('warn')) {
  44. uni.setStorageSync('warn', 'false')
  45. }
  46. // uni.onNetworkStatusChange(({
  47. // networkType,
  48. // isConnected
  49. // }) => { //监听网络类型变化
  50. // if (isConnected) { //当网络类型却换后
  51. // if (!this.$verified()) { //如果用户未登录,就触发 初始化方法。用户用户初次打开小程序时没有网络,随即又有网络的情况
  52. // // this.$store.dispatch('onLaunch')
  53. // }
  54. // if ('2g3g'.indexOf(networkType) !== -1) {
  55. // uni.showToast({
  56. // title: '网络似乎不太稳定',
  57. // icon: 'none'
  58. // })
  59. // }
  60. // } else {
  61. // uni.showToast({
  62. // title: '似乎已经断开网络连接',
  63. // icon: 'none'
  64. // })
  65. // }
  66. // this.$store.commit('CHANGENETWORKSTATUS', networkType)
  67. // })
  68. // uni.showLoading({ title: '加载中', mask: true }) //显示loading
  69. // const [, {
  70. // networkType
  71. // }] = await uni.getNetworkType(); //获取网络类型,给出相应的提示
  72. // // console.log('网络状态', networkType)
  73. // this.$store.commit('CHANGENETWORKSTATUS', networkType) //获取网络类型并将状态存在 store 里
  74. //获取状态栏及胶囊高度
  75. let menuButtonObject = uni.getMenuButtonBoundingClientRect(); //获取菜单按钮(右上角胶囊按钮)的布局位置信息。坐标信息以屏幕左上角为原点。
  76. },
  77. async onHide() {
  78. uni.hideLoading() //app hide 时隐藏loading
  79. }
  80. }
  81. </script>
  82. <style>
  83. @import 'common/styles/main.css'; //引入 ColorUI 组件库主样式
  84. @import 'common/styles/icon.css'; //引入 ColorUI 组件库图标样式
  85. @import 'common/styles/animation.css'; //引入 ColorUI 组件库动画样式
  86. page {
  87. //uniapp 中的 page 标签相当于 html 中的 body, 默认高度为 auto, 但是高度为 100% 更利于 app 布局,你也可以在 page 中设置一些全局样式,比如全局背景色
  88. background: #FFFFFF;
  89. height: 100%;
  90. }
  91. </style>