cz 1 年之前
父節點
當前提交
16f697abca

+ 53 - 45
public/index.html

@@ -1,47 +1,55 @@
 <!DOCTYPE html>
 <html lang="" class="has-bottombar">
-  <head>
-    <meta charset="utf-8" />
-    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
-    <meta name="viewport" content="width=device-width,initial-scale=1.0" />
-    <meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0;" name="viewport" />
-    <link rel="icon" href="<%= BASE_URL %>favicon.ico" />
-    <title><%= htmlWebpackPlugin.options.title %></title>
-    <meta name="wpk-bid" content="dta_2_131175" />
-    <script>
-      var isDingtalk = navigator && /DingTalk/.test(navigator.userAgent);
-      var isProductEnv =
-        window &&
-        window.location &&
-        window.location.host &&
-        window.location.host.indexOf("127.0.0.1") === -1 &&
-        window.location.host.indexOf("localhost") === -1 &&
-        window.location.host.indexOf("192.168.") === -1;
-      // 如果有其它测试域名,请一起排掉,减少测试环境对生产环境监控的干扰
-      if (isProductEnv) {
-        !(function (c, i, e, b) {
-          var h = i.createElement("script");
-          var f = i.getElementsByTagName("script")[0];
-          h.type = "text/javascript";
-          h.crossorigin = true;
-          h.onload = function () {
-            c[b] || (c[b] = new c.wpkReporter({ bid: "dta_2_131175" }));
-            c[b].installAll();
-          };
-          f.parentNode.insertBefore(h, f);
-          h.src = e;
-        })(window, document, "https://g.alicdn.com/woodpeckerx/jssdk??wpkReporter.js", "__wpk");
-      }
-    </script>
-  </head>
-  <header>
-    
-  </header>
-  <body>
-    <noscript>
-      <strong>We're sorry but <%= htmlWebpackPlugin.options.title %> doesn't work properly without JavaScript enabled. Please enable it to continue.</strong>
-    </noscript>
-    <div id="app"></div>
-    <!-- built files will be auto injected -->
-  </body>
-</html>
+
+<head>
+  <meta charset="utf-8" />
+  <meta http-equiv="X-UA-Compatible" content="IE=edge" />
+  <meta name="viewport" content="width=device-width,initial-scale=1.0" />
+  <meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0;" name="viewport" />
+  <link rel="icon" href="<%= BASE_URL %>favicon.ico" />
+  <title><%= htmlWebpackPlugin.options.title %></title>
+  <meta name="wpk-bid" content="dta_2_131175" />
+  <script>
+    var isDingtalk = navigator && /DingTalk/.test(navigator.userAgent);
+    var isProductEnv =
+      window &&
+      window.location &&
+      window.location.host &&
+      window.location.host.indexOf("127.0.0.1") === -1 &&
+      window.location.host.indexOf("localhost") === -1 &&
+      window.location.host.indexOf("192.168.") === -1;
+    // 如果有其它测试域名,请一起排掉,减少测试环境对生产环境监控的干扰
+    if (isProductEnv) {
+      !(function (c, i, e, b) {
+        var h = i.createElement("script");
+        var f = i.getElementsByTagName("script")[0];
+        h.type = "text/javascript";
+        h.crossorigin = true;
+        h.onload = function () {
+          c[b] || (c[b] = new c.wpkReporter({
+            bid: "dta_2_131175"
+          }));
+          c[b].installAll();
+        };
+        f.parentNode.insertBefore(h, f);
+        h.src = e;
+      })(window, document, "https://g.alicdn.com/woodpeckerx/jssdk??wpkReporter.js", "__wpk");
+    }
+  </script>
+  <!-- 引入uni-app sdk -->
+  <script type="text/javascript" src="https://unpkg.com/@dcloudio/uni-webview-js@0.0.3/index.js"></script>
+</head>
+<header>
+
+</header>
+
+<body>
+  <noscript>
+    <strong>We're sorry but <%= htmlWebpackPlugin.options.title %> doesn't work properly without JavaScript enabled.
+      Please enable it to continue.</strong>
+  </noscript>
+  <div id="app"></div>
+  <!-- built files will be auto injected -->
+</body>
+
+</html>

+ 32 - 27
src/assets/css/index.scss

@@ -7,7 +7,7 @@ body {
     width: 100vw;
     // min-height: 100vh;
     background-color: #f2f2f2;
-    max-width:500px;
+    max-width: 500px;
     margin: 0 auto;
 }
 
@@ -30,7 +30,7 @@ li {
     color: #FF655B;
 }
 
-.cl-yl{
+.cl-yl {
     color: #FFB800;
 }
 
@@ -118,6 +118,7 @@ li {
     overflow-x: auto;
     padding: 0 12px;
     box-sizing: border-box;
+
     table {
         width: 100%;
         border-collapse: collapse;
@@ -204,8 +205,8 @@ li {
     border-radius: 0 !important;
 }
 
-.van-field__label--top{
-    color:#666!important;
+.van-field__label--top {
+    color: #666 !important;
 }
 
 .van-form {
@@ -215,33 +216,34 @@ li {
 
 
 .commons-delete {
-    display: flex!important;
-    padding: 5px 15px!important;
-    justify-content: space-between!important;
-    align-items: center!important;
-    color: #999999!important;
+    display: flex !important;
+    padding: 5px 15px !important;
+    justify-content: space-between !important;
+    align-items: center !important;
+    color: #999999 !important;
     background-color: #f2f2f2;
 
     .title {
-        flex: 1!important;
+        flex: 1 !important;
     }
 
     .delete {
-        width: 20px!important;
-        cursor: pointer!important;
-        text-align: center!important;
+        width: 20px !important;
+        cursor: pointer !important;
+        text-align: center !important;
     }
 }
 
-.commons-add-btn{
-    button{
-        border:none!important;
+.commons-add-btn {
+    button {
+        border: none !important;
     }
 }
 
-:root{
-    --van-field-label-width:10.2em!important;
+:root {
+    --van-field-label-width: 10.2em !important;
 }
+
 .has-bottombar:after {
     content: '';
     z-index: 9998;
@@ -254,30 +256,33 @@ li {
     border-radius: 8px;
 }
 
-.common-process-card{
+.common-process-card {
     margin: 16px 12px;
     background: #fff;
 
 }
 
-.van-tabbar--fixed,.van-tabbar{
-    z-index: 3!important;
+.van-tabbar--fixed,
+.van-tabbar {
+    z-index: 3 !important;
 }
 
 
-.van-nav-bar{
-    position: fixed!important;
+.van-nav-bar {
+    position: fixed !important;
     top: 0;
     left: 0;
     right: 0;
 }
 
-.main>.van-search{
-    position: fixed!important;
+.main>.van-search {
+    position: fixed !important;
     top: 46px;
     left: 0;
     right: 0;
-    z-index: 3!important;
+    z-index: 3 !important;
 }
 
-
+.main>.van-pull-refresh {
+    margin-top: 46px;
+}

+ 46 - 33
src/views/JXSK/mes/forward/index.vue

@@ -1,38 +1,37 @@
 <template>
-  <div style="padding-bottom: 60px">
-    <van-nav-bar
-      :title="$t('forward.name')"
-      left-text=""
-      left-arrow
-      @click-left="onClickLeft"
-    >
-      <!-- <template #right> 添加 </template> -->
-    </van-nav-bar>
-    <van-search
-      v-model="req.keyword"
-      :placeholder="$t('common.pleaseEnterKeywords')"
-      @search="onRefresh"
-    />
+  <van-nav-bar
+    :title="$t('forward.name')"
+    left-text=""
+    left-arrow
+    @click-left="onClickLeft"
+    @click-right="onClickRight"
+  >
+    <template #right> 扫码 </template>
+  </van-nav-bar>
+  <van-search
+    v-model="req.keyword"
+    :placeholder="$t('common.pleaseEnterKeywords')"
+    @search="onRefresh"
+  />
 
-    <van-pull-refresh v-model="loading" @refresh="onRefresh">
-      <div class="list">
-        <van-list
-          v-model:loading="loading"
-          :finished="finished"
-          :finished-text="$t('common.noMore')"
-          @load="onLoad"
-          style="margin-bottom: 60px"
-        >
-          <commonList
-            :data="listData"
-            :config="listConfig"
-            :showMore="true"
-            @onClick="toDtl"
-          ></commonList>
-        </van-list>
-      </div>
-    </van-pull-refresh>
-  </div>
+  <van-pull-refresh v-model="loading" @refresh="onRefresh">
+    <div class="list">
+      <van-list
+        v-model:loading="loading"
+        :finished="finished"
+        :finished-text="$t('common.noMore')"
+        @load="onLoad"
+        style="margin-bottom: 60px"
+      >
+        <commonList
+          :data="listData"
+          :config="listConfig"
+          :showMore="true"
+          @onClick="toDtl"
+        ></commonList>
+      </van-list>
+    </div>
+  </van-pull-refresh>
 </template>
 <script setup>
 import { ref, getCurrentInstance, onMounted } from "vue";
@@ -118,6 +117,20 @@ const getList = (type) => {
 };
 
 getList();
+
+const onClickRight = () => {
+  // 允许从相机和相册扫码
+  uni.scanCode({
+    success: function (res) {
+      console.log("条码类型:" + res.scanType);
+      console.log("条码内容:" + res.result);
+      uni.showToast({
+        title: res.result,
+        duration: 2000,
+      });
+    },
+  });
+};
 </script>
 
 <style lang="scss" scoped>

+ 31 - 33
src/views/JXSK/mes/receive/index.vue

@@ -1,38 +1,36 @@
 <template>
-  <div style="padding-bottom: 60px">
-    <van-nav-bar
-      :title="$t('receive.name')"
-      left-text=""
-      left-arrow
-      @click-left="onClickLeft"
-    >
-      <!-- <template #right> 添加 </template> -->
-    </van-nav-bar>
-    <van-search
-      v-model="req.keyword"
-      :placeholder="$t('common.pleaseEnterKeywords')"
-      @search="onRefresh"
-    />
+  <van-nav-bar
+    :title="$t('receive.name')"
+    left-text=""
+    left-arrow
+    @click-left="onClickLeft"
+  >
+    <!-- <template #right> 添加 </template> -->
+  </van-nav-bar>
+  <van-search
+    v-model="req.keyword"
+    :placeholder="$t('common.pleaseEnterKeywords')"
+    @search="onRefresh"
+  />
 
-    <van-pull-refresh v-model="loading" @refresh="onRefresh">
-      <div class="list">
-        <van-list
-          v-model:loading="loading"
-          :finished="finished"
-          :finished-text="$t('common.noMore')"
-          @load="onLoad"
-          style="margin-bottom: 60px"
-        >
-          <commonList
-            :data="listData"
-            :config="listConfig"
-            :showMore="true"
-            @onClick="toDtl"
-          ></commonList>
-        </van-list>
-      </div>
-    </van-pull-refresh>
-  </div>
+  <van-pull-refresh v-model="loading" @refresh="onRefresh">
+    <div class="list">
+      <van-list
+        v-model:loading="loading"
+        :finished="finished"
+        :finished-text="$t('common.noMore')"
+        @load="onLoad"
+        style="margin-bottom: 60px"
+      >
+        <commonList
+          :data="listData"
+          :config="listConfig"
+          :showMore="true"
+          @onClick="toDtl"
+        ></commonList>
+      </van-list>
+    </div>
+  </van-pull-refresh>
 </template>
 <script setup>
 import { ref, getCurrentInstance, onMounted } from "vue";

+ 38 - 40
src/views/JXSK/mes/task/index.vue

@@ -1,39 +1,37 @@
 <template>
-  <div style="padding-bottom: 60px">
-    <van-nav-bar
-      :title="$t('task.name')"
-      left-text=""
-      left-arrow
-      @click-left="onClickLeft"
-      @click-right="onClickRight"
-    >
-      <template #right> 添加 </template>
-    </van-nav-bar>
-    <van-search
-      v-model="req.keyword"
-      :placeholder="$t('common.pleaseEnterKeywords')"
-      @search="onRefresh"
-    />
+  <van-nav-bar
+    :title="$t('task.name')"
+    left-text=""
+    left-arrow
+    @click-left="onClickLeft"
+    @click-right="onClickRight"
+  >
+    <template #right> 添加 </template>
+  </van-nav-bar>
+  <van-search
+    v-model="req.keyword"
+    :placeholder="$t('common.pleaseEnterKeywords')"
+    @search="onRefresh"
+  />
 
-    <van-pull-refresh v-model="loading" @refresh="onRefresh">
-      <div class="list">
-        <van-list
-          v-model:loading="loading"
-          :finished="finished"
-          :finished-text="$t('common.noMore')"
-          @load="onLoad"
-          style="margin-bottom: 60px"
-        >
-          <commonList
-            :data="listData"
-            :config="listConfig"
-            :showMore="true"
-            @onClick="toDtl"
-          ></commonList>
-        </van-list>
-      </div>
-    </van-pull-refresh>
-  </div>
+  <van-pull-refresh v-model="loading" @refresh="onRefresh">
+    <div class="list">
+      <van-list
+        v-model:loading="loading"
+        :finished="finished"
+        :finished-text="$t('common.noMore')"
+        @load="onLoad"
+        style="margin-bottom: 60px"
+      >
+        <commonList
+          :data="listData"
+          :config="listConfig"
+          :showMore="true"
+          @onClick="toDtl"
+        ></commonList>
+      </van-list>
+    </div>
+  </van-pull-refresh>
 </template>
 <script setup>
 import { ref, getCurrentInstance, onMounted } from "vue";
@@ -51,24 +49,24 @@ const listData = ref([]);
 
 const listConfig = ref([
   {
-    label: proxy.t('task.taskCode'),
+    label: proxy.t("task.taskCode"),
     prop: "code",
   },
   {
-    label: proxy.t('task.productName'),
+    label: proxy.t("task.productName"),
     prop: "productName",
   },
 
   {
-    label: proxy.t('task.taskQuantity'),
+    label: proxy.t("task.taskQuantity"),
     prop: "quantity",
   },
   {
-    label: proxy.t('task.principal'),
+    label: proxy.t("task.principal"),
     prop: "personLiableName",
   },
   {
-    label: proxy.t('task.completionDeadline'),
+    label: proxy.t("task.completionDeadline"),
     prop: "dueDate",
   },
 ]);
@@ -86,7 +84,7 @@ const onClickLeft = () => proxy.$router.push("/main/working");
 const onClickRight = () => {
   proxy.$router.push("/main/jxskTaskAdd");
 };
-proxy.uploadDdRightBtn(onClickRight,proxy.t('common.add'))
+proxy.uploadDdRightBtn(onClickRight, proxy.t("common.add"));
 const toDtl = (row) => {
   proxy.$router.push({
     path: "/main/jxskTaskAdd",

+ 31 - 33
src/views/MES/produce/plan/index.vue

@@ -1,38 +1,36 @@
 <template>
-  <div style="padding-bottom: 60px">
-    <van-nav-bar
-      :title="$t('plan.name')"
-      left-text=""
-      left-arrow
-      @click-left="onClickLeft"
-      @click-right="onClickRight"
-    >
-      <template #right> {{ $t("common.add") }} </template>
-    </van-nav-bar>
-    <van-search
-      v-model="req.keyword"
-      :placeholder="$t('common.pleaseEnterKeywords')"
-      @search="onRefresh"
-    />
+  <van-nav-bar
+    :title="$t('plan.name')"
+    left-text=""
+    left-arrow
+    @click-left="onClickLeft"
+    @click-right="onClickRight"
+  >
+    <template #right> {{ $t("common.add") }} </template>
+  </van-nav-bar>
+  <van-search
+    v-model="req.keyword"
+    :placeholder="$t('common.pleaseEnterKeywords')"
+    @search="onRefresh"
+  />
 
-    <van-pull-refresh v-model="loading" @refresh="onRefresh">
-      <div class="list">
-        <van-list
-          v-model:loading="loading"
-          :finished="finished"
-          :finished-text="$t('common.noMore')"
-          @load="onLoad"
-          style="margin-bottom: 60px"
-        >
-          <commonList
-            :data="listData"
-            @onClick="toDtl"
-            :config="listConfig"
-          ></commonList>
-        </van-list>
-      </div>
-    </van-pull-refresh>
-  </div>
+  <van-pull-refresh v-model="loading" @refresh="onRefresh">
+    <div class="list">
+      <van-list
+        v-model:loading="loading"
+        :finished="finished"
+        :finished-text="$t('common.noMore')"
+        @load="onLoad"
+        style="margin-bottom: 60px"
+      >
+        <commonList
+          :data="listData"
+          @onClick="toDtl"
+          :config="listConfig"
+        ></commonList>
+      </van-list>
+    </div>
+  </van-pull-refresh>
 </template>
 <script setup>
 import { ref, getCurrentInstance, onMounted } from "vue";

+ 143 - 140
src/views/processApproval/index.vue

@@ -1,159 +1,162 @@
 <template>
-	<van-nav-bar
-		:title="$t('processApproval.name')"
-		left-text=""
-		left-arrow
-		@click-left="onClickLeft"
-		@click-right="onClickRight"
-	>
-	</van-nav-bar>
-	<van-search
-		v-model="req.keyword"
-		:placeholder="$t('common.pleaseEnterKeywords')"
-		@search="onRefresh"
-	/>
-	<van-pull-refresh v-model="loading" @refresh="onRefresh">
-		<div class="list">
-			<van-list
-				v-model:loading="loading"
-				:finished="finished"
-				:finished-text="$t('common.noMore')"
-				@load="onLoad"
-				style="margin-bottom: 60px"
-			>
-				<commonList
-					:data="listData"
-					@onClick="toDtl"
-					:config="listConfig"
-				></commonList>
-			</van-list>
-		</div>
-	</van-pull-refresh>
+  <van-nav-bar
+    :title="$t('processApproval.name')"
+    left-text=""
+    left-arrow
+    @click-left="onClickLeft"
+    @click-right="onClickRight"
+  >
+  </van-nav-bar>
+  <van-search
+    v-model="req.keyword"
+    :placeholder="$t('common.pleaseEnterKeywords')"
+    @search="onRefresh"
+  />
+  <van-pull-refresh
+    v-model="loading"
+    @refresh="onRefresh"
+    style="margin-top: 46px"
+  >
+    <div class="list">
+      <van-list
+        v-model:loading="loading"
+        :finished="finished"
+        :finished-text="$t('common.noMore')"
+        @load="onLoad"
+        style="margin-bottom: 60px"
+      >
+        <commonList
+          :data="listData"
+          @onClick="toDtl"
+          :config="listConfig"
+        ></commonList>
+      </van-list>
+    </div>
+  </van-pull-refresh>
 </template>
 <script setup>
-import { ref, getCurrentInstance, onMounted } from 'vue'
-import commonList from '@/components/common-list.vue'
-import { useRoute } from 'vue-router'
-import { getUserInfo } from '@/utils/auth'
+import { ref, getCurrentInstance, onMounted } from "vue";
+import commonList from "@/components/common-list.vue";
+import { useRoute } from "vue-router";
+import { getUserInfo } from "@/utils/auth";
 
-const loading = ref(false)
-const route = useRoute()
+const loading = ref(false);
+const route = useRoute();
 const req = ref({
-	pageNum: 1,
-	keyword: null,
-	definition: '1',
-	tenantId: getUserInfo().tenantId,
-})
-const finished = ref(false)
-const proxy = getCurrentInstance().proxy
-const listData = ref([])
+  pageNum: 1,
+  keyword: null,
+  definition: "1",
+  tenantId: getUserInfo().tenantId,
+});
+const finished = ref(false);
+const proxy = getCurrentInstance().proxy;
+const listData = ref([]);
 const listConfig = ref([
-	{
-		label: proxy.t('processApproval.processType'),
-		prop: 'flowName',
-	},
-	{
-		label: proxy.t('processApproval.initiator'),
-		prop: 'createUserName',
-	},
-	{
-		label: proxy.t('processApproval.processTitle'),
-		prop: 'title',
-	},
-])
+  {
+    label: proxy.t("processApproval.processType"),
+    prop: "flowName",
+  },
+  {
+    label: proxy.t("processApproval.initiator"),
+    prop: "createUserName",
+  },
+  {
+    label: proxy.t("processApproval.processTitle"),
+    prop: "title",
+  },
+]);
 const onRefresh = () => {
-	req.value.pageNum = 1
-	finished.value = false
-	getList('refresh')
-}
+  req.value.pageNum = 1;
+  finished.value = false;
+  getList("refresh");
+};
 const onLoad = () => {
-	getList()
-}
-const onClickLeft = () => proxy.$router.push('/main/working')
+  getList();
+};
+const onClickLeft = () => proxy.$router.push("/main/working");
 const onClickRight = () => {
-	proxy.$router.push({
-		path: 'userAdd',
-		query: {
-			type: 'add',
-		},
-	})
-}
-proxy.uploadDdRightBtn(onClickRight, proxy.t('common.add'))
+  proxy.$router.push({
+    path: "userAdd",
+    query: {
+      type: "add",
+    },
+  });
+};
+proxy.uploadDdRightBtn(onClickRight, proxy.t("common.add"));
 const toDtl = (row) => {
-	if (row.status != 1 && row.status != 0) {
-		proxy.$router.push({
-			path: '/main/processDtl',
-			query: {
-				flowKey: row.flowKey,
-				id: row.id,
-				processType: 20,
-				version: row.version,
-			},
-		})
-		return
-	}
-	proxy.post('flowExample/getApprovalRecord', { id: row.id }).then((res) => {
-		if (res.data.recordList.length > 0) {
-			let data = res.data.recordList.filter((item) => item.status === 2)
-			let nodeType = 0
-			if (data && data.length > 0) {
-				nodeType = data[0].nodeType
-			}
-			proxy.$router.push({
-				path: '/main/processDtl',
-				query: {
-					flowKey: row.flowKey,
-					id: row.id,
-					processType: nodeType == 1 ? 30 : 10,
-					version: row.version,
-				},
-			})
-		}
-	})
-	// proxy.$router.push({
-	// 	path: 'processDtl',
-	// 	query: {
-	// 		flowKey: row.flowKey,
-	// 		id: row.id,
-	// 		processType: 10,
-	// 	},
-	// })
-}
+  if (row.status != 1 && row.status != 0) {
+    proxy.$router.push({
+      path: "/main/processDtl",
+      query: {
+        flowKey: row.flowKey,
+        id: row.id,
+        processType: 20,
+        version: row.version,
+      },
+    });
+    return;
+  }
+  proxy.post("flowExample/getApprovalRecord", { id: row.id }).then((res) => {
+    if (res.data.recordList.length > 0) {
+      let data = res.data.recordList.filter((item) => item.status === 2);
+      let nodeType = 0;
+      if (data && data.length > 0) {
+        nodeType = data[0].nodeType;
+      }
+      proxy.$router.push({
+        path: "/main/processDtl",
+        query: {
+          flowKey: row.flowKey,
+          id: row.id,
+          processType: nodeType == 1 ? 30 : 10,
+          version: row.version,
+        },
+      });
+    }
+  });
+  // proxy.$router.push({
+  // 	path: 'processDtl',
+  // 	query: {
+  // 		flowKey: row.flowKey,
+  // 		id: row.id,
+  // 		processType: 10,
+  // 	},
+  // })
+};
 onMounted(() => {
-	if (route.query) {
-		
-		getList()
-	}
-})
+  if (route.query) {
+    getList();
+  }
+});
 
 const getList = (type) => {
-	loading.value = true
-	const postUrl = {
-		"1":'/flowExample/getToBeProcessedPage',
-		"2":'/flowExample/getHaveInitiatedPage',
-		"3":'/flowExample/getProcessedPage',
-	}
-	proxy
-		.post(postUrl[route.query.status], req.value)
-		.then((res) => {
-			listData.value =
-				type === 'refresh'
-					? res.data.rows
-					: listData.value.concat(res.data.rows)
-			if (req.value.pageNum * 10 >= res.data.total) {
-				finished.value = true
-			}
-			req.value.pageNum++
-			loading.value = false
-		})
-		.catch((err) => {
-			loading.value = false
-		})
-}
+  loading.value = true;
+  const postUrl = {
+    1: "/flowExample/getToBeProcessedPage",
+    2: "/flowExample/getHaveInitiatedPage",
+    3: "/flowExample/getProcessedPage",
+  };
+  proxy
+    .post(postUrl[route.query.status], req.value)
+    .then((res) => {
+      listData.value =
+        type === "refresh"
+          ? res.data.rows
+          : listData.value.concat(res.data.rows);
+      if (req.value.pageNum * 10 >= res.data.total) {
+        finished.value = true;
+      }
+      req.value.pageNum++;
+      loading.value = false;
+    })
+    .catch((err) => {
+      loading.value = false;
+    });
+};
 </script>
 
 <style lang="scss" scoped>
 .list {
-	min-height: 70vh;
+  min-height: 70vh;
 }
 </style>