来试试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,国内用户低门槛上手,快点来试试把你的网站进行样式升级吧~

相关推荐
木申13 小时前
我用瑞幸 CLI 点了一杯咖啡,踩了 3 个坑
人工智能·trae
豆包MarsCode1 天前
运营自媒体太累?用 TRAE Work 立省 80% 工作量
trae
豆包MarsCode7 天前
只需5步,SOLO 实现数据采集到可视化全流程
trae
大家的林语冰12 天前
AI 遥控代码截图,录制终端动画,定制自动化批量制图流程,解放你的双手~
前端·ai编程·trae
油炸自行车12 天前
Claude Code 错误:API Error: 400 Failed to deserialize the JSON body into the
开发语言·javascript·json·trae·claude code·api error 400
豆包MarsCode13 天前
看了很多文章依旧不会写 Skill ? 保姆级攻略请查收!
trae
mCell14 天前
我把默认的 code . 换成了 zed .
rust·visual studio code·trae
豆包MarsCode15 天前
新手必看:3 个真实场景,讲透 SOLO 高效用法
trae
豆包MarsCode16 天前
互联网运营人必备的 14 个 SOLO 提示词模板
trae
豆包MarsCode21 天前
电商商家增长团队|全栈 AI Coding 工作流分享
trae