Register.vue 3.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. <template>
  2. <div :class="prefixCls" class="h-[100%] relative <xl:bg-v-dark <sm:px-10px <xl:px-10px <md:px-10px">
  3. <div class="relative h-full flex mx-auto">
  4. <div :class="`${prefixCls}__left flex-1 bg-gray-500 bg-opacity-20 relative p-30px <xl:hidden`">
  5. <!-- 左上角的 logo + 系统标题 -->
  6. <div class="flex items-center relative text-white">
  7. <img alt="" class="w-48px h-48px mr-10px" src="@/assets/imgs/logo.png" />
  8. <span class="text-20px font-bold">Tabemate Pro オーダーシステム</span>
  9. </div>
  10. <!-- 左边的背景图 + 欢迎语 -->
  11. <div class="flex justify-center items-center h-[calc(100%-60px)]">
  12. <TransitionGroup appear enter-active-class="animate__animated animate__bounceInLeft" tag="div">
  13. <img key="1" alt="" class="w-500px" src="@/assets/imgs/login_bg.png" />
  14. <div key="2" class="text-3xl text-white" style="text-align: center">Tabemate Pro オーダーシステムへようこそ</div>
  15. <!-- <div key="3" class="mt-5 font-normal text-white text-14px">
  16. {{ t('login.message') }}
  17. </div> -->
  18. </TransitionGroup>
  19. </div>
  20. </div>
  21. <div class="flex-1 p-30px <sm:p-10px dark:bg-v-dark relative">
  22. <!-- 右上角的主题、语言选择 -->
  23. <div class="flex justify-between items-center text-white @2xl:justify-end @xl:justify-end">
  24. <div class="flex items-center @2xl:hidden xl:hidden">
  25. <img alt="" class="w-48px h-48px mr-10px @gl:hidden" src="@/assets/imgs/logo.png" />
  26. <span class="text-20px font-bold c-black">Tabemate Pro オーダーシステム</span>
  27. </div>
  28. <div class="flex justify-end items-center space-x-10px">
  29. <!-- <ThemeSwitch /> -->
  30. <!-- <LocaleDropdown class="<xl:text-white dark:text-white" /> -->
  31. </div>
  32. </div>
  33. <!-- 右边的登录界面 -->
  34. <Transition appear enter-active-class="animate__animated animate__bounceInRight">
  35. <div class="h-full flex items-center m-auto w-[100%] @2xl:max-w-500px @xl:max-w-500px @md:max-w-500px @lg:max-w-500px">
  36. <!-- 账号登录 -->
  37. <!-- <LoginForm class="p-20px h-auto m-auto <xl:(rounded-3xl light:bg-white)" /> -->
  38. <!-- 手机登录 -->
  39. <!-- <MobileForm class="p-20px h-auto m-auto <xl:(rounded-3xl light:bg-white)" />
  40. 二维码登录 -->
  41. <!-- <QrCodeForm class="p-20px h-auto m-auto <xl:(rounded-3xl light:bg-white)" />
  42. 注册 -->
  43. <RegisterForm class="p-20px h-auto m-auto <xl:(rounded-3xl light:bg-white)" />
  44. <!-- 三方登录 -->
  45. <!-- <SSOLoginVue class="p-20px h-auto m-auto <xl:(rounded-3xl light:bg-white)" /> -->
  46. </div>
  47. </Transition>
  48. </div>
  49. </div>
  50. </div>
  51. </template>
  52. <script lang="ts" name="Login" setup>
  53. import { useDesign } from '@/hooks/web/useDesign'
  54. import { useAppStore } from '@/store/modules/app'
  55. //import { ThemeSwitch } from '@/layout/components/ThemeSwitch'
  56. //import { LocaleDropdown } from '@/layout/components/LocaleDropdown'
  57. import { RegisterForm } from './components'
  58. // import { LoginForm, MobileForm, QrCodeForm, RegisterForm, SSOLoginVue } from './components'
  59. // const { t } = useI18n()
  60. const appStore = useAppStore()
  61. const { getPrefixCls } = useDesign()
  62. const prefixCls = getPrefixCls('login')
  63. appStore.setIsDark(false)
  64. </script>
  65. <style lang="scss" scoped>
  66. $prefix-cls: #{$namespace}-login;
  67. .#{$prefix-cls} {
  68. &__left {
  69. &::before {
  70. position: absolute;
  71. top: 0;
  72. left: 0;
  73. z-index: -1;
  74. width: 100%;
  75. height: 100%;
  76. background-image: url('@/assets/svgs/login-bg.svg');
  77. background-position: center;
  78. background-repeat: no-repeat;
  79. content: '';
  80. }
  81. }
  82. }
  83. </style>