Vue实现简单用户登录页面

📑前言

本文主要是【Vue】------Vue实现简单用户登录页面的文章,如果有什么需要改进的地方还请大佬指出⛺️

🎬作者简介:大家好,我是听风与他🥇

☁️博客首页:CSDN主页听风与他

🌄每日一句:狠狠沉淀,顶峰相见

目录

页面要求:

  • 登录页面需要有标题,用来提示用户当前的登录状态
  • 在未登录时,需要有两个输入框和登录按钮供用户输入账号、密码以及进行登录操作。
  • 在登录完成后,输入框需要隐藏,需要提供按钮让用户登出

Vue实现代码:

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Vue用户登录</title>
    <script src="https://unpkg.com/vue@3/dist/vue.global.js"></script>
</head>
<body>
    <div id="Application" style="text-align: center;">
        <!-- 标题 -->
      <h1>{{title}}</h1>  
      <!-- 账号和密码输入组件 -->
      <div v-if="noLogin">账号:<input v-model="username" type="text"></div>
      <div v-if="noLogin">密码:<input v-model="password" type="password"></div>
      <div v-on:click="click" style="border-radius: 30px;width: 100px;margin: 20px auto;color: white;
      background-color: blue;">{{buttonTitle}}</div>
    </div>
    <script>
        const App = {
            // 定义页面所需要的数据
            data(){
                return{
                    title:'欢迎您:未登录',
                    noLogin:true,
                    username:'',
                    password:'',
                    buttonTitle:'登录'
                }
            },
            methods:{
                // 单击登录执行按钮执行的方法
                click(){
                    if(this.noLogin){
                        this.login()
                    }else{
                        this.logout()
                    }
                },
                // 定义登录操作所执行的函数
                login(){
                    // 判断账号密码是否为空
                    if(this.username.length > 0 && this.password.length > 0){
                        // 模拟登录操作,进行弹窗提示
                        alert(`userName:${this.username} password:${this.password}`)
                        this.noLogin = false
                        this.title = `欢迎您:${this.username}`
                        this.buttonTitle = '退出'
                        this.username = ''
                        this.password = ''
                    }else{
                        alert('请输入账号密码')
                    }
                },
                // 定义登出操作所执行的函数
                logout(){
                    //清空登录数据
                    this.noLogin = true
                    this.title = '欢迎您,未登录'
                    this.buttonTitle = '登录'
                }
            }
        }
        // vue组件绑定
        Vue.createApp(App).mount("#Application")
    </script>
</body>
</html>

登录页面

登录提示

登录成功页面

点击退出-页面

📑文章末尾

相关推荐
掘金安东尼2 小时前
让 JavaScript 更容易「善后」的新能力
前端·javascript·面试
掘金安东尼2 小时前
用 HTMX 为 React Data Grid 加速实时更新
前端·javascript·面试
灵感__idea4 小时前
Hello 算法:众里寻她千“百度”
前端·javascript·算法
yinuo4 小时前
轻松接入大语言模型API -04
前端
袋鼠云数栈UED团队5 小时前
基于 Lexical 实现变量输入编辑器
前端·javascript·架构
cipher5 小时前
ERC-4626 通胀攻击:DeFi 金库的"捐款陷阱"
前端·后端·安全
UrbanJazzerati5 小时前
非常友好的Vue 3 生命周期详解
前端·面试
AAA阿giao5 小时前
从零构建一个现代登录页:深入解析 Tailwind CSS + Vite + Lucide React 的完整技术栈
前端·css·react.js
亦妤5 小时前
JS执行机制、作用域及作用域链
javascript
兆子龙6 小时前
像 React Hook 一样「自动触发」:用 Git Hook 拦住忘删的测试代码与其它翻车现场
前端·架构