浏览代码

日常开发

林旭祥 6 月之前
父节点
当前提交
92998a0aeb
共有 3 个文件被更改,包括 23 次插入6 次删除
  1. 8 0
      src/App.vue
  2. 7 4
      src/api/request.ts
  3. 8 2
      src/views/login/mobile.vue

+ 8 - 0
src/App.vue

@@ -6,6 +6,8 @@
 
 <script setup lang="ts">
 import { handWs } from '@/utils/handWs'
+const router = useRouter();
+
 /**
  * 手势
 */
@@ -13,6 +15,12 @@ const getHandWs = () => {
   //加载手势WS
   handWs((e: any) => {
     // console.log("eeee", e)
+    //刷新
+    if (e?.data?.result == "refresh") {
+      router.push({ path: '/gesture' });
+      //刷新
+      window.location.reload()
+    }
   });
 };
 

+ 7 - 4
src/api/request.ts

@@ -22,9 +22,9 @@ service.interceptors.request.use(
       delete config.headers['auth'];
       const message = '缺少凭证,请重新登录!';
       let deviceid = localStorage.getItem('deviceid');
-      if ((router.currentRoute.value.path == '/gesture') || (deviceid && router.currentRoute.value.path != '/login/qrcode')) {
+      if (router.currentRoute.value.path == '/gesture' || (deviceid && router.currentRoute.value.path != '/login/qrcode')) {
         router.push('/login/qrcode');
-      }else{
+      } else {
         router.push('/login');
       }
       localStorage.clear();
@@ -59,17 +59,20 @@ service.interceptors.request.use(
 service.interceptors.response.use(
   (res: AxiosResponse) => {
     const code = res.data.code;
+    const status = res.data.status;
     const message = res.data.message;
     if (code === 401) {
       let deviceid = localStorage.getItem('deviceid');
-      if ((router.currentRoute.value.path == '/gesture') || (deviceid && router.currentRoute.value.path != '/login/qrcode')) {
+      if (router.currentRoute.value.path == '/gesture' || (deviceid && router.currentRoute.value.path != '/login/qrcode')) {
         router.push('/login/qrcode');
-      }else{
+      } else {
         router.push('/login');
       }
       localStorage.clear();
       ElMessage({ message: message, type: 'error', duration: 5 * 1000 });
       return Promise.reject('凭证已过期,请重新登录!');
+    } else if (status == 500) {
+      return Promise.reject(message);
     } else {
       return Promise.resolve(res.data);
     }

+ 8 - 2
src/views/login/mobile.vue

@@ -25,9 +25,12 @@
           <div class="login-item">
             <div @click="getCmdtest(2)" class="login-btn" style="width:100%;">2、举左手(确认)</div>
           </div>
-          <div class="login-item" style="margin-bottom: 0;">
+          <div class="login-item">
             <div @click="getCmdtest(3)" class="login-btn" style="width:100%;">3、双手胸前交叉(退出)</div>
           </div>
+          <div class="login-item" style="margin-bottom: 0;">
+            <div @click="getCmdtest(4)" class="login-btn" style="width:100%;">4、刷新</div>
+          </div>
         </div>
       </div>
     </div>
@@ -109,7 +112,10 @@ const getDeviceInfo = () => {
 /**
  * 模拟发送手势
 */
-const getCmdtest = (data: any) => {
+const getCmdtest = async (data: any) => {
+  if (data == 4) {
+    await proxy?.$modal.confirm("确定要刷新吗?")
+  }
   let params = {
     hctrl_name: `handcontroller_${handcontroller.value}`,
     cmd: data