App.vue 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190
  1. <template>
  2. <div id="app">
  3. <!-- IOS机器会跳转两次到其他路由,当from路由被缓存时,原因未知 -->
  4. <keep-alive >
  5. <!-- <transition name="fade"> -->
  6. <router-view v-if="$route.meta.keepAlive"></router-view>
  7. <!-- </transition> -->
  8. </keep-alive>
  9. <router-view v-if="!$route.meta.keepAlive"></router-view>
  10. <div class="loadingShadow" v-show="loading">
  11. <div class="loadData">
  12. <img src="https://skyforest.static.elaber.cn/detail/loading.gif" alt="" />
  13. <div class="loadingMsg">{{loadingMsg}}</div>
  14. </div>
  15. </div>
  16. </div>
  17. </template>
  18. <script>
  19. import {
  20. getStorage,
  21. removeItem
  22. } from '@/utils/localStorage';
  23. export default {
  24. name: "App",
  25. // provide() {
  26. // return {
  27. // reload: this.reload,
  28. // };
  29. // },
  30. data() {
  31. return {
  32. themeColor: "rgba(0,97,232,1)",
  33. themeColor2: "rgba(0,97,232,0.2)",
  34. isRouterAlive: true,
  35. showAccountView: false, //是否显示用户账号列表
  36. acountList: [], //弹出层账号列表数据
  37. selectAccount: null, //选中的账号
  38. isIOS: false,
  39. include: []
  40. };
  41. },
  42. created() {
  43. let userId = this.$route.query.leavePhoneCustomerId ? this.$route.query.leavePhoneCustomerId : '129130';
  44. if (userId) { //如果存在用户id
  45. this.$store.dispatch('setUserId', userId);
  46. }
  47. let isIOS = !!navigator.userAgent.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/);
  48. this.isIOS = isIOS;
  49. window.addEventListener('error', (error) => {
  50. // 区分是否是js错误
  51. if (error.message) {
  52. alert("error" + message)
  53. } else {
  54. alert('监测到E1004错误' + error);
  55. }
  56. }, true)
  57. // window.onerror = function(message,source,line,column,error) {
  58. // };
  59. },
  60. watch: {
  61. loading: {
  62. handler(newVal) {
  63. if (!newVal) {
  64. this.$store.state.loadingMsg = ''
  65. }
  66. }
  67. },
  68. },
  69. computed: {
  70. loading() {
  71. return this.$store.state.loading;
  72. },
  73. loadingMsg() {
  74. if (this.$store.state.loadingMsg) {
  75. return this.$store.state.loadingMsg;
  76. } else {
  77. return "正在查询,请耐心等待";
  78. }
  79. }
  80. },
  81. mounted() {
  82. // 禁止图片单机事件,防止出现图片点击浏览器自动预览功能
  83. document.body.addEventListener("click", function(e) {
  84. if (e.target.nodeName.toLowerCase() == "img") {
  85. e.preventDefault();
  86. }
  87. });
  88. },
  89. methods: {
  90. },
  91. };
  92. </script>
  93. <style>
  94. #app {
  95. font-family: Avenir, Helvetica, Arial, sans-serif;
  96. -webkit-font-smoothing: antialiased;
  97. -moz-osx-font-smoothing: grayscale;
  98. /* text-align: center;
  99. color: #2c3e50;
  100. margin-top: 60px; */
  101. }
  102. body {
  103. background: #181C28;
  104. }
  105. .el-tooltip__popper.is-light {
  106. backdrop-filter: blur(10.36rem) !important;
  107. background-color: rgba(255, 255, 255, 0.4) !important;
  108. border: none !important;
  109. color: #ffffff !important;
  110. }
  111. .el-tooltip__popper .popper__arrow,
  112. .el-tooltip__popper .popper__arrow::after {
  113. border-style: none !important;
  114. }
  115. .el-picker-panel__body .el-date-picker__header .el-picker-panel__icon-btn {
  116. color: #FFFFFF;
  117. }
  118. .el-picker-panel__body .el-date-picker__header .el-date-picker__header-label {
  119. color: #FFFFFF;
  120. }
  121. .el-picker-panel__body .el-picker-panel__content .el-date-table th {
  122. color: #FFFFFF;
  123. }
  124. .dropdown-view-menu {
  125. font-size: 14px;
  126. color: var(--themeColor9);
  127. /* width: 336rem; */
  128. box-sizing: border-box;
  129. padding: 15rem !important;
  130. margin-top: 3rem;
  131. backdrop-filter: blur(60px);
  132. border: none !important;
  133. background-color: rgba(255, 255, 255, 0.15) !important;
  134. white-space: nowrap;
  135. overflow: hidden;
  136. text-overflow: ellipsis;
  137. }
  138. .dropdown-view-menu .active {
  139. color: #CEF7D1;
  140. }
  141. .dropdown-view-text {
  142. font-family: "Verdana Bold";
  143. font-weight: 700;
  144. text-decoration: underline;
  145. font-size: 14px;
  146. color: #fff;
  147. }
  148. .select-julangview {
  149. display: none;
  150. }
  151. .popper-class-qr {
  152. padding: 0px !important;
  153. }
  154. .BMap_cpyCtrl {
  155. display: none;
  156. }
  157. .anchorBL {
  158. display: none;
  159. }
  160. .amap-logo img {
  161. display: none;
  162. }
  163. .amap-copyright {
  164. opacity: 0;
  165. }
  166. </style>
  167. <style lang="scss" scoped>
  168. @import "./assets/common.scss";
  169. </style>