来试试Trae这一款企业级的登录界面吧

前言

之前我们团队在开发一个项目的时候,需要用到登录功能,当时我们的前端就简单的写了个登录页面,样式及其不优雅,但是功能是实现了,

当时我就想,前端的登录页面样式能不能做的更好看一些,所以我就想到了使用Trae来试试,看看能不能不费吹灰之力实现登录页面的样式,要求简约大气,上档次,还要兼容现在的登录、注册,以及微信、短信等方式登录

于是我把我的需求整理给Trae,看看能不能实现我的要求,然后再让老板过目,样式可以的话,再让Trae帮我把之前的功能对接好

先来看看最终的效果

登录成功的提示 是不是有点企业级的登陆页面那个味道了,我只是简单的使用了Trae,自己写了个登录页面,但是效果还是不错的,至少比我之前写的登录页面好看很多,看起来像企业级的登录页面

接下来看看Trae是如何实现的

首先看看Trae的登录页面DOM的代码,采用的是居中的左右布局,右边是登录表单,左边是登录背景

其他登录方式的实现也比较简单,就是在登录表单下面添加个其他登录方式的按钮,点击按钮就跳转到对应的登录页面,放在登录按钮下方。

也是很显眼的位置,让人一眼就可以看的到有其他登录方式,比如微信登录、短信登录等

trae的完成度还是很高的, 登录页面的样式都是Trae提供的,我只是简单的修改了下登录按钮的样式,其他的都没有修改

然后来看看里面的js代码是怎么实现

关键的密码隐藏与显示的实现,根据密码输入框的类型来切换,点击图标切换密码输入框的类型

切换图标也会切换,从显示密码切换为隐藏密码,从隐藏密码切换为显示密码

js 复制代码
 // 密码显示/隐藏切换
    const togglePassword = document.querySelector('.toggle-password');
    const passwordInput = document.getElementById('password');
    
    if (togglePassword && passwordInput) {
        togglePassword.addEventListener('click', function() {
            // 切换密码输入框的类型
            const type = passwordInput.getAttribute('type') === 'password' ? 'text' : 'password';
            passwordInput.setAttribute('type', type);
            
            // 切换图标
            this.classList.toggle('fa-eye');
            this.classList.toggle('fa-eye-slash');
        });
    }

获取验证码的倒计时,点击获取验证码按钮后,按钮会倒计时,此时按钮无法点击,倒计时结束后,按钮才会重新点击可用

js 复制代码
    // 获取验证码倒计时
    const getCodeBtn = document.querySelector('.get-code-btn');
    const phoneInput = document.getElementById('phone');
    
    if (getCodeBtn && phoneInput) {
        getCodeBtn.addEventListener('click', function() {
            const phone = phoneInput.value.trim();
            
            // 简单的手机号验证
            if (!phone || !/^1\d{10}$/.test(phone)) {
                showMessage('请输入正确的手机号码', 'error');
                return;
            }
            
            // 模拟发送验证码
            showMessage('验证码已发送', 'success');
            
            // 倒计时
            let countdown = 60;
            getCodeBtn.disabled = true;
            getCodeBtn.textContent = `${countdown}秒后重新获取`;
            
            const timer = setInterval(() => {
                countdown--;
                getCodeBtn.textContent = `${countdown}秒后重新获取`;
                
                if (countdown <= 0) {
                    clearInterval(timer);
                    getCodeBtn.disabled = false;
                    getCodeBtn.textContent = '获取验证码';
                }
            }, 1000);
        });
    }

总结

如果你想要体验一下ai编程的魅力,可以试试Trae,国内用户低门槛上手,快点来试试把你的网站进行样式升级吧~

相关推荐
北辰alk21 小时前
2025:当Vibe Coding成为我的创意画布——一名前端工程师的AI元年记
前端·trae
bytebeats1 天前
Trae IDE: 我为什么从Free版升级成了Pro版订阅
trae·vibecoding
xiaoshengjinbu1 天前
codebuddy 智能体配置异常处理
trae·codebuddy·智能体配置
「QT(C++)开发工程师」1 天前
我的 TRAE 编程体验-简介篇
ide·trae
效率客栈老秦1 天前
Python Trae提示词开发实战(12):AI实现API自动化批量调用与数据处理让效率提升10倍
人工智能·python·ai·prompt·trae
艺杯羹1 天前
Trae 智能编程工具入门指南:安装流程 + 贪吃蛇实操
ai·ai编程·编程工具·trae·ai开发工具
李剑一2 天前
uni-app实现本地MQTT连接
前端·trae
豆包MarsCode2 天前
用第一性原理拆解 Agentic Coding:从理论到实操(上)
trae
效率客栈老秦3 天前
Python Trae提示词开发实战(8):数据采集与清洗一体化方案让效率提升10倍
人工智能·python·ai·提示词·trae
草帽lufei3 天前
Claude Code最强开源对手OpenCode实测:免费使用GLM-4.7/MiniMax等高级模型
ai编程·claude·trae