|
@@ -4,38 +4,19 @@
|
|
|
<div class="login-container">
|
|
|
<div class="login-header">
|
|
|
<!-- <h1>知识图谱自动化构建平台</h1><br> -->
|
|
|
- <h1>欢迎{{ isSignedIn ? "注册" : "登录" }}知识图谱自动化构建平台</h1>
|
|
|
+ <h1>欢迎{{ isSignedIn ? '注册' : '登录' }}知识图谱自动化构建平台</h1>
|
|
|
</div>
|
|
|
|
|
|
<div v-if="isSignedIn == false">
|
|
|
<el-form v-model="loginForm">
|
|
|
- <el-form-item
|
|
|
- label="用户名"
|
|
|
- :label-width="loginForm.formLabelWidth"
|
|
|
- size="large"
|
|
|
- >
|
|
|
- <el-input
|
|
|
- v-model="loginForm.username"
|
|
|
- name="username"
|
|
|
- placeholder="请输入用户名"
|
|
|
- ></el-input>
|
|
|
+ <el-form-item label="用户名" :label-width="loginForm.formLabelWidth" size="large">
|
|
|
+ <el-input v-model="loginForm.username" name="username" placeholder="请输入用户名"></el-input>
|
|
|
</el-form-item>
|
|
|
- <el-form-item
|
|
|
- label="密码"
|
|
|
- :label-width="loginForm.formLabelWidth"
|
|
|
- size="large"
|
|
|
- >
|
|
|
- <el-input
|
|
|
- v-model="loginForm.password"
|
|
|
- name="password"
|
|
|
- type="password"
|
|
|
- placeholder="请输入密码"
|
|
|
- ></el-input>
|
|
|
+ <el-form-item label="密码" :label-width="loginForm.formLabelWidth" size="large">
|
|
|
+ <el-input v-model="loginForm.password" name="password" type="password" placeholder="请输入密码"></el-input>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="" :label-width="loginForm.formLabelWidth">
|
|
|
- <el-button type="primary" @click="handleLoginSubmit"
|
|
|
- >登录</el-button
|
|
|
- >
|
|
|
+ <el-button type="primary" @click="handleLoginSubmit">登录</el-button>
|
|
|
<el-button type="success" @click="handleSignIn">注册</el-button>
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
@@ -46,77 +27,29 @@
|
|
|
</div> -->
|
|
|
|
|
|
<el-form :model="loginForm" :rules="signinRules" ref="signinForm">
|
|
|
- <el-form-item
|
|
|
- label="用户名"
|
|
|
- :label-width="loginForm.formLabelWidth"
|
|
|
- prop="username"
|
|
|
- size="large"
|
|
|
- >
|
|
|
- <el-input
|
|
|
- v-model="loginForm.username"
|
|
|
- name="username"
|
|
|
- placeholder="请输入用户名"
|
|
|
- ></el-input>
|
|
|
+ <el-form-item label="用户名" :label-width="loginForm.formLabelWidth" prop="username" size="large">
|
|
|
+ <el-input v-model="loginForm.username" name="username" placeholder="请输入用户名"></el-input>
|
|
|
</el-form-item>
|
|
|
- <el-form-item
|
|
|
- label="显示姓名"
|
|
|
- :label-width="loginForm.formLabelWidth"
|
|
|
- prop="full_name"
|
|
|
- size="large"
|
|
|
- >
|
|
|
- <el-input
|
|
|
- v-model="loginForm.full_name"
|
|
|
- name="full_name"
|
|
|
- placeholder="请输入姓名"
|
|
|
- ></el-input>
|
|
|
+ <el-form-item label="显示姓名" :label-width="loginForm.formLabelWidth" prop="full_name" size="large">
|
|
|
+ <el-input v-model="loginForm.full_name" name="full_name" placeholder="请输入姓名"></el-input>
|
|
|
</el-form-item>
|
|
|
- <el-form-item
|
|
|
- label="密码"
|
|
|
- :label-width="loginForm.formLabelWidth"
|
|
|
- prop="password"
|
|
|
- size="large"
|
|
|
- >
|
|
|
- <el-input
|
|
|
- v-model="loginForm.password"
|
|
|
- name="password"
|
|
|
- type="password"
|
|
|
- placeholder="请输入密码"
|
|
|
- ></el-input>
|
|
|
+ <el-form-item label="密码" :label-width="loginForm.formLabelWidth" prop="password" size="large">
|
|
|
+ <el-input v-model="loginForm.password" name="password" type="password" placeholder="请输入密码"></el-input>
|
|
|
</el-form-item>
|
|
|
- <el-form-item
|
|
|
- lable="密码确认"
|
|
|
- :label-width="loginForm.formLabelWidth"
|
|
|
- prop="password2"
|
|
|
- size="large"
|
|
|
- >
|
|
|
- <el-input
|
|
|
- v-model="loginForm.password2"
|
|
|
- name="password2"
|
|
|
- type="password"
|
|
|
- placeholder="请再次输入密码"
|
|
|
- ></el-input>
|
|
|
+ <el-form-item lable="密码确认" :label-width="loginForm.formLabelWidth" prop="password2" size="large">
|
|
|
+ <el-input v-model="loginForm.password2" name="password2" type="password" placeholder="请再次输入密码"></el-input>
|
|
|
</el-form-item>
|
|
|
- <el-form-item
|
|
|
- label="邮箱"
|
|
|
- :label-width="loginForm.formLabelWidth"
|
|
|
- prop="email"
|
|
|
- size="large"
|
|
|
- >
|
|
|
- <el-input
|
|
|
- v-model="loginForm.email"
|
|
|
- name="email"
|
|
|
- placeholder="请输入邮箱"
|
|
|
- ></el-input>
|
|
|
+ <el-form-item label="邮箱" :label-width="loginForm.formLabelWidth" prop="email" size="large">
|
|
|
+ <el-input v-model="loginForm.email" name="email" placeholder="请输入邮箱"></el-input>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="" :label-width="loginForm.formLabelWidth">
|
|
|
- <el-button type="primary" @click="handleSignInSubmit"
|
|
|
- >注册</el-button
|
|
|
- >
|
|
|
+ <el-button type="primary" @click="handleSignInSubmit">注册</el-button>
|
|
|
<el-button type="success" @click="handleSignIn">登录</el-button>
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
|
</div>
|
|
|
</div>
|
|
|
+
|
|
|
</el-container>
|
|
|
<el-container class="main-container" v-if="isLoggedIn">
|
|
|
<el-header class="site_header">
|
|
@@ -168,7 +101,7 @@
|
|
|
</el-container>
|
|
|
</template>
|
|
|
<script setup lang="ts">
|
|
|
-import { onMounted, ref, watch, watchEffect } from "vue";
|
|
|
+import { onMounted, ref, watch, watchEffect } from "vue";
|
|
|
import { useRouter, useRoute } from "vue-router";
|
|
|
import { RouterView } from "vue-router";
|
|
|
import SideMenu from "@/components/SideMenu.vue";
|
|
@@ -178,7 +111,7 @@ import {
|
|
|
getSessionVar,
|
|
|
saveSessionVar,
|
|
|
} from "@/utils/session";
|
|
|
-import { ElNotification, ElMessageBox } from "element-plus";
|
|
|
+import { ElNotification, ElMessageBox, ElMessage } from "element-plus";
|
|
|
import { useMenuStore } from "@/stores/menu.js";
|
|
|
const { updateRouteList } = useMenuStore();
|
|
|
const router = useRouter();
|
|
@@ -209,7 +142,7 @@ const validatePassword = (rule: any, value: any, callback: Function) => {
|
|
|
callback();
|
|
|
}
|
|
|
};
|
|
|
-const validatePassword2 = (rule, value, callback) => {
|
|
|
+const validatePassword2 = (rule: Object, value: string, callback: Function) => {
|
|
|
if (value === "") {
|
|
|
callback(new Error("请再次输入密码"));
|
|
|
} else if (value !== loginForm.value.password) {
|
|
@@ -353,9 +286,15 @@ const handleLoginSubmit = () => {
|
|
|
};
|
|
|
|
|
|
isLoggedIn.value = true;
|
|
|
- goToKMPlatform();
|
|
|
- });
|
|
|
-};
|
|
|
+ goToKMPlatform()
|
|
|
+ }).catch((err: any) => {
|
|
|
+ ElMessage({
|
|
|
+ message: err.message,
|
|
|
+ type: 'error'
|
|
|
+ })
|
|
|
+ console.log(err)
|
|
|
+ })
|
|
|
+}
|
|
|
|
|
|
function handleLogout() {
|
|
|
deleteSessionVar("session_id");
|
|
@@ -388,9 +327,9 @@ watchEffect(() => {
|
|
|
// 监听路由变化
|
|
|
console.log("route changed", route);
|
|
|
if (route.query.logout) {
|
|
|
- handleLogout();
|
|
|
+ handleLogout()
|
|
|
}
|
|
|
-});
|
|
|
+})
|
|
|
</script>
|
|
|
<style scoped>
|
|
|
#app {
|
|
@@ -404,6 +343,7 @@ watchEffect(() => {
|
|
|
height: 100vh;
|
|
|
overflow: hidden;
|
|
|
}
|
|
|
+
|
|
|
.login-box {
|
|
|
width: 100vw;
|
|
|
height: 100vh;
|
|
@@ -425,6 +365,7 @@ watchEffect(() => {
|
|
|
background-color: #eef6ff;
|
|
|
border-radius: 12px 12px 12px 12px;
|
|
|
}
|
|
|
+
|
|
|
.login-header {
|
|
|
font-size: 26px;
|
|
|
font-weight: bold;
|