|
@@ -5,8 +5,11 @@
|
|
|
<div class="content">
|
|
|
<div class="info">
|
|
|
<img src="@/app/jmfire/images/banner@2x.png" />
|
|
|
+ <span>{{ dateFormat(currentDate, "yyyy-MM-dd hh:mm:ss") }}</span>
|
|
|
</div>
|
|
|
<el-form class="panel login" :model="form" @submit.stop>
|
|
|
+ <img :src="appConstant.ico" />
|
|
|
+ <h2>{{ appConstant.title }}</h2>
|
|
|
<el-form-item class="panel-form-item">
|
|
|
<p class="err-info">{{ verification.phone }}</p>
|
|
|
<el-input
|
|
@@ -65,15 +68,21 @@
|
|
|
</template>
|
|
|
|
|
|
<script lang="ts" setup>
|
|
|
-import { reactive, watch, ref, computed } from "vue";
|
|
|
+import { reactive, watch, ref, computed, onUnmounted } from "vue";
|
|
|
import { openErrorMsg, baseURL, getCode } from "@/request";
|
|
|
import { PHONE } from "@/constant/REG";
|
|
|
-import { guid, strToParams } from "@/util";
|
|
|
+import { guid, strToParams, dateFormat } from "@/util";
|
|
|
import { RouteName, router } from "@/router";
|
|
|
import { login } from "@/store/system";
|
|
|
import { appConstant } from "@/app";
|
|
|
import { user } from "@/store/user";
|
|
|
|
|
|
+const currentDate = ref(new Date());
|
|
|
+const interval = setInterval(() => {
|
|
|
+ currentDate.value = new Date();
|
|
|
+});
|
|
|
+onUnmounted(() => clearInterval(interval));
|
|
|
+
|
|
|
// 是否显示明文密码
|
|
|
const flag = ref(true);
|
|
|
// 表单
|
|
@@ -182,9 +191,19 @@ const submitClick = async () => {
|
|
|
color: #fff;
|
|
|
flex: none;
|
|
|
text-align: left;
|
|
|
+ position: relative;
|
|
|
+ pointer-events: none;
|
|
|
+ span {
|
|
|
+ position: absolute;
|
|
|
+ bottom: 20px;
|
|
|
+ left: 50%;
|
|
|
+ transform: translateX(-50%);
|
|
|
+ font-size: 18px;
|
|
|
+ color: #fff;
|
|
|
+ }
|
|
|
+
|
|
|
img {
|
|
|
- width: 376px;
|
|
|
- height: 376px;
|
|
|
+ height: 541px;
|
|
|
}
|
|
|
h1 {
|
|
|
font-size: 2.8rem;
|
|
@@ -208,7 +227,7 @@ const submitClick = async () => {
|
|
|
}
|
|
|
}
|
|
|
.login {
|
|
|
- width: 320px;
|
|
|
+ width: 380px;
|
|
|
padding: 40px 40px 30px;
|
|
|
position: relative;
|
|
|
display: inline-block;
|
|
@@ -263,15 +282,21 @@ const submitClick = async () => {
|
|
|
width: 600px;
|
|
|
padding: 30px 0 40px;
|
|
|
text-align: initial;
|
|
|
+ text-align: center;
|
|
|
+
|
|
|
+ img {
|
|
|
+ width: 100px;
|
|
|
+ }
|
|
|
|
|
|
h2 {
|
|
|
color: #323233;
|
|
|
- font-size: 1.85rem;
|
|
|
+ font-size: 1.4rem;
|
|
|
margin-bottom: 2.14rem;
|
|
|
font-weight: normal;
|
|
|
padding-left: 60px;
|
|
|
padding-bottom: 20px;
|
|
|
border-bottom: 1px solid #e9e9e9;
|
|
|
+ text-align: center;
|
|
|
}
|
|
|
|
|
|
.panel-form-item {
|
|
@@ -288,7 +313,7 @@ const submitClick = async () => {
|
|
|
.err-info {
|
|
|
position: absolute;
|
|
|
top: 100%;
|
|
|
- left: 20px;
|
|
|
+ left: 0;
|
|
|
font-size: 1rem;
|
|
|
line-height: 2.14rem;
|
|
|
color: #fa5555;
|