App.vue 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. <script setup>
  2. import config from "./config";
  3. import store from "@/store";
  4. import { getToken, setToken, removeToken } from "@/utils/auth";
  5. import { defineComponent, getCurrentInstance, inject, nextTick, onMounted, watchEffect } from "vue";
  6. import { onLoad, onShow, onHide, onLaunch, onReady } from "@dcloudio/uni-app";
  7. let tab = inject("$tab");
  8. const { proxy } = getCurrentInstance();
  9. function initApp() {
  10. // 初始化应用配置
  11. initConfig();
  12. // 检查用户登录状态
  13. //#ifdef H5
  14. // checkLogin();
  15. //#endif
  16. //初始化获取安全区高度
  17. proxy.$settingStore.systemHeightTop();
  18. }
  19. function initConfig() {
  20. getApp().globalData.config = config;
  21. }
  22. function checkLogin() {
  23. if (!getToken()) {
  24. proxy.$tab.reLaunch("/pages/login");
  25. }
  26. }
  27. watchEffect(() => {
  28. //#ifdef APP-PLUS
  29. if (uni.getStorageSync("serveUrl")) {
  30. config.baseUrl = "http://" + uni.getStorageSync("serveUrl") + "/prod-api";
  31. }
  32. //#endif
  33. });
  34. onLaunch(() => {
  35. console.log("App Launch");
  36. // #ifdef APP-PLUS
  37. plus.screen.lockOrientation("portrait-primary"); //设置不可横屏
  38. // #endif
  39. //初始化默认主题
  40. if (!proxy.$settingStore.$state.themeColor) {
  41. proxy.$settingStore.SET_THEMECOLOR(proxy.$constData.themeList[0]);
  42. }
  43. // setToken(
  44. // "eyJhbGciOiJIUzUxMiJ9.eyIiOjEwMzIsInVzZXJfaWQiOjYzLCJ1c2VyX2tleSI6IjU3ODkxOTMxNDRiMjRhMTI4MzUyZjk3YTM1MjhlYjkyIiwidXNlcm5hbWUiOiJmaHMxIn0.VOaV8pB_yDn1sYxiYK3NlyzsD_65fjEaQrIhD1QitRFCmASnEOuVgKz_msGiQXtperasBfRTzyJDwE9T9Sw2Zw"
  45. // );
  46. // proxy.$tab.reLaunch("/pages/mine/index");
  47. // proxy.$tab.reLaunch("/pages/index");
  48. initApp();
  49. });
  50. onReady(() => {});
  51. onShow(() => {
  52. console.log("App Show");
  53. });
  54. onHide(() => {
  55. console.log("App Hide");
  56. });
  57. </script>
  58. <style lang="scss">
  59. @import "@/static/scss/index.scss";
  60. @import "@/static/scss/public.scss";
  61. @import "static/iconfont/iconfont.css";
  62. </style>
  63. <style lang="scss">
  64. @import "@/uni_modules/uview-plus/index.scss";
  65. uni-page-body,
  66. uni-page-refresh {
  67. height: 100%;
  68. }
  69. //默认返回按钮样式
  70. :deep(.uni-page-head-btn) {
  71. background-color: rgba(0, 0, 0, 0) !important;
  72. }
  73. //默认头部导航title样式
  74. :deep(.uni-page-head__title) {
  75. font-size: 16px;
  76. font-weight: bold;
  77. }
  78. //uview-plus导航栏title样式
  79. :deep(.u-navbar__content__title) {
  80. font-size: 16px;
  81. font-weight: bold;
  82. }
  83. </style>