说明:我们在做后台管理系统的时候,都会有一个登录页面,有的时候网速比较慢,登录速度比较慢,有的用户就会一直点登录按钮(图1),体验不是特别好,基于此,优化一下,给登录页面一个加载效果,当用户点击一次登录的时候,网速比较慢的情况出现(图2)这样的效果
(图1)
(图2)
上代码:
<el-button :loading="loading" type="primary" style="width: 440px;" @click.native.prevent="clicklogin(loginForm.uid, loginForm.password)"> <span v-if="!loading">登录</span><span v-else> 正在登录,请稍后...</span>
</el-button>
data() {return {loading:false,}},
特殊情况:
当我们的账号或者密码输入错误的时候,页面还是一直保持转圈圈的状态,点不了登录,显然不是我们要的效果。改进:当账号或者密码输入错误的时候,给一个报错提示,并取消加载效果。主要代码如下:
clickLogin(){this.$refs.loginForm.validate(valid)=>{if(valid){.........}else{this.$message({type:'error',message:res.message})this.loading=false}}
}