本代码用于创建登录页面,提供用户通过多种方式(如 Google、Facebook、Apple 等)进行身份验证并登录系统。
<template>
<div class="bg-gradient-to-b from-indigo-500 via-purple-500 to-pink-500 h-screen flex items-center justify-center">
<div class="bg-white rounded-lg shadow-2xl w-96 p-8">
<div class="text-center text-2xl font-bold mb-4">Let's get something</div>
<div class="text-center text-gray-500 mb-8">Good to see you back.</div>
<!-- 社交登录按钮 -->
<div class="flex justify-center mb-4">
<button class="...">Continue with Google</button>
<button class="...">Continue with Facebook</button>
<button class="...">Continue with Apple</button>
</div>
<!-- 手动输入用户名和密码 -->
<div class="mb-4">
<input type="text" placeholder="Username" v-model="username" />
<input type="password" placeholder="Password" v-model="password" />
</div>
<!-- 记住我选项 -->
<div class="flex items-center justify-between mb-4">
<div class="flex items-center">
<input type="checkbox" id="remember-me" />
<label for="remember-me">Remember me next time</label>
</div>
<div>Forgot your credential?</div>
</div>
<!-- 登录按钮 -->
<button class="...">Sign in</button>
<!-- 注册链接 -->
<div class="mt-6 text-center text-gray-500">
Don't have account?
<a href="#">Sign up</a>
</div>
</div>
</div>
</template>
<script lang="tsx" setup>
import { ref } from 'vue'
const username = ref('')
const password = ref('')
</script>
body {
font-family: 'Inter', sans-serif;
}
1. 社交登录按钮
使用按钮元素创建社交登录按钮,并添加相应的图标和文本。
2. 手动输入用户名和密码
使用输入元素创建文本框,用于手动输入用户名和密码。使用 v-model
将输入值绑定到 username
和 password
响应式变量。
3. 记住我选项
使用复选框创建记住我选项,并使用 aria-describedby
属性关联到一个描述文本。
4. 登录按钮
使用按钮元素创建登录按钮,并添加文本和事件处理程序。
5. 注册链接
使用链接元素创建注册链接,并指定目标 URL。
经验与收获
开发这段代码的过程让我对 Vue 的响应式系统、事件处理和样式化有了更深入的了解。我还学会了如何创建交互式用户界面,并使用 HTML、CSS 和 JavaScript 实现复杂的布局。
未来拓展与优化