| | |
| | | <div :class="`${prefixCls}-entry`" v-show="!showDate"> |
| | | <div :class="`${prefixCls}-entry-content`"> |
| | | <div :class="`${prefixCls}-entry__header enter-x`"> |
| | | <img :src="userinfo.avatar || headerImg" :class="`${prefixCls}-entry__header-img`" /> |
| | | <img :src="userInfo.avatar || headerImg" :class="`${prefixCls}-entry__header-img`" /> |
| | | <p :class="`${prefixCls}-entry__header-name`"> |
| | | {{ userinfo.realName }} |
| | | {{ userInfo.realName }} |
| | | </p> |
| | | </div> |
| | | <InputPassword |
| | |
| | | <script lang="ts" setup> |
| | | import { ref, computed } from 'vue'; |
| | | import { Input } from 'ant-design-vue'; |
| | | import { useUserStore } from '/@/store/modules/user'; |
| | | import { useLockStore } from '/@/store/modules/lock'; |
| | | import { useI18n } from '/@/hooks/web/useI18n'; |
| | | import { useUserStore } from '@/store/modules/user'; |
| | | import { useLockStore } from '@/store/modules/lock'; |
| | | import { useI18n } from '@/hooks/web/useI18n'; |
| | | import { useNow } from './useNow'; |
| | | import { useDesign } from '/@/hooks/web/useDesign'; |
| | | import { useDesign } from '@/hooks/web/useDesign'; |
| | | import { LockOutlined } from '@ant-design/icons-vue'; |
| | | import headerImg from '/@/assets/images/header.jpg'; |
| | | import headerImg from '@/assets/images/header.jpg'; |
| | | |
| | | const InputPassword = Input.Password; |
| | | |
| | |
| | | |
| | | const { t } = useI18n(); |
| | | |
| | | const userinfo = computed(() => { |
| | | const userInfo = computed(() => { |
| | | return userStore.getUserInfo || {}; |
| | | }); |
| | | |
| | |
| | | } |
| | | |
| | | function goLogin() { |
| | | // 主动登出,不带redirect地址 |
| | | userStore.logout(true); |
| | | lockStore.resetLockInfo(); |
| | | } |
| | |
| | | } |
| | | </script> |
| | | <style lang="less" scoped> |
| | | /* stylelint-disable media-query-no-invalid */ |
| | | @prefix-cls: ~'@{namespace}-lock-page'; |
| | | |
| | | .@{prefix-cls} { |