简洁、现代的构建块。复制并粘贴到你的应用中。适用于所有 Vue 框架。开源。永久免费。
<script lang="ts"> export const description = "A simple login form." </script> <script setup lang="ts"> import LoginForm from "@/components/LoginForm.vue" </script> <template> <div class="flex min-h-svh w-full items-center justify-center p-6 md:p-10"> <div class="w-full max-w-sm"> <LoginForm /> </div> </div> </template>
<script lang="ts"> export const description = "A two column login page with a cover image." </script> <script setup lang="ts"> import { GalleryVerticalEnd } from "lucide-vue-next" import LoginForm from "@/components/LoginForm.vue" </script> <template> <div class="grid min-h-svh lg:grid-cols-2"> <div class="flex flex-col gap-4 p-6 md:p-10"> <div class="flex justify-center gap-2 md:justify-start"> <a href="#" class="flex items-center gap-2 font-medium"> <div class="bg-primary text-primary-foreground flex size-6 items-center justify-center rounded-md"> <GalleryVerticalEnd class="size-4" /> </div> Acme Inc. </a> </div> <div class="flex flex-1 items-center justify-center"> <div class="w-full max-w-xs"> <LoginForm /> </div> </div> </div> <div class="bg-muted relative hidden lg:block"> <img src="/placeholder.svg" alt="Image" class="absolute inset-0 h-full w-full object-cover dark:brightness-[0.2] dark:grayscale" > </div> </div> </template>
<script lang="ts"> export const description = "A login page with a muted background color." </script> <script setup lang="ts"> import { GalleryVerticalEnd } from "lucide-vue-next" import LoginForm from "@/components/LoginForm.vue" </script> <template> <div class="bg-muted flex min-h-svh flex-col items-center justify-center gap-6 p-6 md:p-10"> <div class="flex w-full max-w-sm flex-col gap-6"> <a href="#" class="flex items-center gap-2 self-center font-medium"> <div class="bg-primary text-primary-foreground flex size-6 items-center justify-center rounded-md"> <GalleryVerticalEnd class="size-4" /> </div> Acme Inc. </a> <LoginForm /> </div> </div> </template>
<script lang="ts"> export const description = "A login page with form and image." </script> <script setup lang="ts"> import LoginForm from "@/components/LoginForm.vue" </script> <template> <div class="bg-muted flex min-h-svh flex-col items-center justify-center p-6 md:p-10"> <div class="w-full max-w-sm md:max-w-4xl"> <LoginForm /> </div> </div> </template>
<script lang="ts"> export const description = "A simple email-only login page." </script> <script setup lang="ts"> import LoginForm from "@/components/LoginForm.vue" </script> <template> <div class="bg-background flex min-h-svh flex-col items-center justify-center gap-6 p-6 md:p-10"> <div class="w-full max-w-sm"> <LoginForm /> </div> </div> </template>