|
@@ -1,42 +1,44 @@
|
|
|
<template>
|
|
|
<section
|
|
|
- class="container"
|
|
|
- v-loading="loginLoading"
|
|
|
- :element-loading-svg="loadingIcon"
|
|
|
- element-loading-background="rgba(5, 2, 11, 0.6)"
|
|
|
+ class="container"
|
|
|
+ v-loading="loginLoading"
|
|
|
+ :element-loading-svg="loadingIcon"
|
|
|
+ element-loading-background="rgba(5, 2, 11, 0.6)"
|
|
|
>
|
|
|
<section class="main flex">
|
|
|
<nav class="siderbar">
|
|
|
- <div class="nav-item center-center" :class="{'activeBg' : pageType === 'setting'}" @click="onChangeNav('setting')">
|
|
|
+ <div class="nav-item center-center" :class="{'activeBg' : pageType === 'setting'}"
|
|
|
+ @click="onChangeNav('setting')">
|
|
|
<div class="icon icon1"></div>
|
|
|
</div>
|
|
|
- <div class="nav-item center-center" :class="{'activeBg' : pageType === 'viewImgList'}" @click="onChangeNav('viewImgList')">
|
|
|
+ <div class="nav-item center-center" :class="{'activeBg' : pageType === 'viewImgList'}"
|
|
|
+ @click="onChangeNav('viewImgList')">
|
|
|
<div class="icon icon2"></div>
|
|
|
</div>
|
|
|
</nav>
|
|
|
<div v-if="pageType === 'setting'" class="content-page flex flex1">
|
|
|
<div class="content">
|
|
|
- <StyleSetting :task-detail="taskDetail" />
|
|
|
+ <StyleSetting :task-detail="taskDetail"/>
|
|
|
</div>
|
|
|
<div class="right-content flex1">
|
|
|
- <ResultPage :task-detail="taskDetail" @getTaskDetail="getTaskDetail" />
|
|
|
+ <ResultPage :task-detail="taskDetail" @getTaskDetail="getTaskDetail"/>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div v-if="pageType == 'viewImgList'" class="content-page flex felx1">
|
|
|
- <TaskList @onGetTaskDetail="getTaskDetail" />
|
|
|
+ <TaskList @onGetTaskDetail="getTaskDetail"/>
|
|
|
</div>
|
|
|
</section>
|
|
|
</section>
|
|
|
</template>
|
|
|
|
|
|
<script setup>
|
|
|
-import { reactive, ref, onMounted } from 'vue'
|
|
|
-import { useRoute } from 'vue-router'
|
|
|
+import {reactive, ref, onMounted} from 'vue'
|
|
|
+import {useRoute} from 'vue-router'
|
|
|
import StyleSetting from '@/components/StyleSetting'
|
|
|
import ResultPage from '@/components/ResultPage'
|
|
|
import TaskList from '@/components/TaskList'
|
|
|
-import { postTaskDetail, postLogin } from '@/network/api/user'
|
|
|
-import { setToken, getToken } from '@/utils/auth'
|
|
|
+import {postTaskDetail, postLogin} from '@/network/api/user'
|
|
|
+// import {setToken, getToken, removeToken} from '@/utils/auth'
|
|
|
import emitter from '@/utils/bus'
|
|
|
|
|
|
const router = useRoute()
|
|
@@ -49,7 +51,7 @@ let taskDetail = reactive({
|
|
|
task: {}
|
|
|
})
|
|
|
const getTaskDetail = async (id) => {
|
|
|
- const res = await postTaskDetail({ ...id })
|
|
|
+ const res = await postTaskDetail({...id})
|
|
|
if (res && res.code === 0) {
|
|
|
onChangeNav('setting')
|
|
|
emitter.emit('getDaskDetail', res.data)
|
|
@@ -61,26 +63,27 @@ const loadingIcon = '<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/
|
|
|
let loginLoading = ref(true)
|
|
|
const login = async () => {
|
|
|
loginLoading.value = true
|
|
|
- const { timestamp, uid, md5 } = router.query
|
|
|
+ const {timestamp, uid, md5} = router.query
|
|
|
sessionStorage.setItem('md5', md5)
|
|
|
try {
|
|
|
- const res = await postLogin({ timestamp: Number(timestamp), uid }, { md5 })
|
|
|
+ const res = await postLogin({timestamp: Number(timestamp), uid}, {md5})
|
|
|
if (res && res.code === 0) {
|
|
|
console.log(res)
|
|
|
sessionStorage.setItem('token', res.data.token)
|
|
|
- setToken(res.data.token)
|
|
|
+ // setToken(res.data.token)
|
|
|
loginLoading.value = false
|
|
|
} else {
|
|
|
+ // removeToken()
|
|
|
loginLoading.value = false
|
|
|
}
|
|
|
- }catch(err) {
|
|
|
- alert(1234)
|
|
|
+ } catch (err) {
|
|
|
+ // removeToken()
|
|
|
loginLoading.value = false
|
|
|
}
|
|
|
}
|
|
|
|
|
|
onMounted(() => {
|
|
|
- const token = getToken()
|
|
|
+ sessionStorage.removeItem('token')
|
|
|
login()
|
|
|
})
|
|
|
|
|
@@ -91,40 +94,48 @@ onMounted(() => {
|
|
|
background-color: #141416;
|
|
|
height: 100%;
|
|
|
}
|
|
|
+
|
|
|
.siderbar {
|
|
|
width: 78px;
|
|
|
height: 100%;
|
|
|
background-color: #222225;
|
|
|
box-sizing: border-box;
|
|
|
+
|
|
|
.nav-item {
|
|
|
width: 52px;
|
|
|
height: 51px;
|
|
|
border-radius: 6px;
|
|
|
margin: 30px auto 0;
|
|
|
}
|
|
|
+
|
|
|
.activeBg {
|
|
|
background-color: #0234C2;
|
|
|
}
|
|
|
+
|
|
|
.icon {
|
|
|
width: 36px;
|
|
|
height: 32px;
|
|
|
background-size: cover;
|
|
|
background-repeat: no-repeat;
|
|
|
}
|
|
|
+
|
|
|
.icon1 {
|
|
|
background-image: url(../assets/images/hui.png);
|
|
|
}
|
|
|
+
|
|
|
.icon2 {
|
|
|
background-image: url(../assets/images/shou.png)
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
.content {
|
|
|
width: 39%;
|
|
|
height: 100%;
|
|
|
box-sizing: border-box;
|
|
|
border-right: 1px solid var(--page-border-color);
|
|
|
}
|
|
|
+
|
|
|
.right-content {
|
|
|
box-sizing: border-box;
|
|
|
}
|
|
|
-</style>
|
|
|
+</style>
|