|
@@ -17,6 +17,9 @@
|
|
|
<el-form-item class="mt-8" prop="password">
|
|
|
<el-input v-model="formValue.password" clearable placeholder="请输入密码" show-password type="password" @keyup="passwordKeyUp" />
|
|
|
</el-form-item>
|
|
|
+ <el-form-item>
|
|
|
+ <el-checkbox v-model="checkbox" label="记住密码" />
|
|
|
+ </el-form-item>
|
|
|
<el-form-item class="mb-0 mt-6">
|
|
|
<el-button class="text-[16px] text-white" :loading="loading" block color="#20C88B" @click="formValidateClick">登 录</el-button>
|
|
|
</el-form-item>
|
|
@@ -33,8 +36,7 @@ import router from '~src/router/index'
|
|
|
import { useAppStore } from '~src/store'
|
|
|
import { deepClone, formValidate } from 'js-fast-way'
|
|
|
import { useAppLogin } from '~store/user'
|
|
|
-import { getStore } from '~src/utils/storage'
|
|
|
-
|
|
|
+import { getStore, setStore } from '~src/utils/storage'
|
|
|
//图片文件
|
|
|
import bg1Png from '~src/assets/login/bg1.png'
|
|
|
import bgPng from '~src/assets/login/bg.png'
|
|
@@ -46,10 +48,13 @@ const store = useAppStore()
|
|
|
onMounted(async () => {
|
|
|
const username = deepClone(getStore('login-username') || '')
|
|
|
const password = deepClone(getStore('login-password') || '')
|
|
|
+ const checkboxs = deepClone(getStore('login-checkbox') || '')
|
|
|
formValue.value.username = username
|
|
|
formValue.value.password = password
|
|
|
+ checkbox.value = checkboxs
|
|
|
await nextTick()
|
|
|
store.clearStoreData() //先清理下缓存
|
|
|
+ setLoginData()
|
|
|
// 兼容性脚本,如果loading属性不被支持
|
|
|
document.querySelectorAll('img[loading="lazy"]').forEach((img) => {
|
|
|
img.src = img.dataset.src
|
|
@@ -58,6 +63,7 @@ onMounted(async () => {
|
|
|
|
|
|
//表单
|
|
|
const formRef = ref(null)
|
|
|
+const checkbox = ref(true)
|
|
|
const formValue = ref({ tenantId: '000000', username: '', password: '', type: 'account' })
|
|
|
const formRules = {
|
|
|
username: { required: true, message: '请输入账号', trigger: 'blur' },
|
|
@@ -86,11 +92,21 @@ const formValidateClick = async () => {
|
|
|
//登录成功
|
|
|
loading.value = false
|
|
|
window?.$message?.success('登录成功')
|
|
|
+ setLoginData()
|
|
|
setTimeout(() => {
|
|
|
loading.value = false
|
|
|
router.push({ name: store.home })
|
|
|
}, 1500)
|
|
|
}
|
|
|
+
|
|
|
+//缓存账号密码
|
|
|
+const setLoginData = () => {
|
|
|
+ if (checkbox.value) {
|
|
|
+ setStore('login-username', formValue.value.username)
|
|
|
+ setStore('login-password', formValue.value.password)
|
|
|
+ }
|
|
|
+ setStore('login-checkbox', checkbox.value)
|
|
|
+}
|
|
|
</script>
|
|
|
|
|
|
<style lang="scss">
|