Files
mes-ui-d2/src/pages/login/page.vue
liyang b461e5b7d4 修改大小写
Former-commit-id: b9dc56014aa05a7edf69c53efca3e21e26648234 [formerly e14ba58ac1d4dc8fa9f99360a64f4a4e0896b3b1] [formerly b9dc56014aa05a7edf69c53efca3e21e26648234 [formerly e14ba58ac1d4dc8fa9f99360a64f4a4e0896b3b1] [formerly b9dc56014aa05a7edf69c53efca3e21e26648234 [formerly e14ba58ac1d4dc8fa9f99360a64f4a4e0896b3b1] [formerly e14ba58ac1d4dc8fa9f99360a64f4a4e0896b3b1 [formerly dbd30bc4c64b70f631c8cc2bd8f596c5919eb789 [formerly 1a2283954ae0ff58db32db51375c4aae736a4266]]]]]
Former-commit-id: 35b98156e98fc2a5b1afcc95a659164a3ff66489
Former-commit-id: 7e0586998f72896dfcd0fd5fa8940ae6bf587fe5
Former-commit-id: 054fe4fa97cfdb96e740865e7139f640e7f60549 [formerly adf81c26c8003ffe9bc2acc09297fe346ae95265]
Former-commit-id: 41cacfded1401975dfa43fb8bf7437b6c4fb9f30
Former-commit-id: 85c7be1c2c9198489da1f03c49da2983fa13adb3
Former-commit-id: 3f40faa14c34c730aad52462a1bea33f727ba763
Former-commit-id: f8e47c6d56be0db8627d881fef67bb897395e31d
Former-commit-id: d4f1780a9cd61f2f55646e8633cb65d0ba3995db
2018-07-22 20:34:36 +08:00

148 lines
4.1 KiB
Vue
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<template>
<div class="login-page">
<div class="layer bg" id="login"></div>
<div class="layer flex-center">
<!-- logo部分 -->
<div class="logo-group">
<img src="./image/logo.png" alt="logo">
</div>
<!-- 表单部分 -->
<div class="form-group">
<el-card>
<el-form ref="loginForm" label-position="top" :rules="rules" :model="formLogin">
<el-form-item prop="username">
<el-input type="text" v-model="formLogin.username" placeholder="用户名">
<i slot="prepend" class="fa fa-user-circle-o"></i>
</el-input>
</el-form-item>
<el-form-item prop="password">
<el-input type="password" v-model="formLogin.password" placeholder="密码">
<i slot="prepend" class="fa fa-keyboard-o"></i>
</el-input>
</el-form-item>
<el-form-item prop="code">
<el-input type="text" v-model="formLogin.code" placeholder="- - - -">
<template slot="prepend">验证码</template>
<template slot="append">
<img class="login-code" src="./image/login-code.png">
</template>
</el-input>
</el-form-item>
<el-button @click="submit" type="primary" class="button-login">登录</el-button>
</el-form>
</el-card>
</div>
<!-- 快速登陆按钮 -->
<el-button type="info" class="button-help" @click="dialogVisible = true">
快速选择用户测试功能
</el-button>
</div>
<el-dialog
title="快速选择用户"
:visible.sync="dialogVisible"
width="400px">
<el-row :gutter="10" style="margin: -20px 0px -10px 0px;">
<el-col v-for="(user, index) in users" :key="index" :span="8">
<div class="user-btn" @click="handleUserBtnClick(user)">
<d2-icon name="user-circle-o"/>
<span>{{user.name}}</span>
</div>
</el-col>
</el-row>
</el-dialog>
</div>
</template>
<script>
/* eslint-disable */
require('particles.js')
import config from './config/default'
import { mapActions } from 'vuex'
export default {
data () {
return {
// 快速选择用户
dialogVisible: false,
users: [
{
name: '管理员',
username: 'admin',
password: 'admin'
},
{
name: '编辑',
username: 'editor',
password: 'editor'
},
{
name: '用户1',
username: 'user1',
password: 'user1'
}
],
// 表单
formLogin: {
username: 'admin',
password: 'admin',
code: 'v9am'
},
// 校验
rules: {
username: [
{ required: true, message: '请输入用户名', trigger: 'blur' }
],
password: [
{ required: true, message: '请输入密码', trigger: 'blur' }
],
code: [
{ required: true, message: '请输入验证码', trigger: 'blur' }
]
}
}
},
mounted () {
// 初始化例子插件
particlesJS('login', config)
},
methods: {
...mapActions([
'd2adminLogin'
]),
/**
* @description 接收选择一个用户快速登陆的事件
* @param {Object} user 用户信息
*/
handleUserBtnClick (user) {
this.formLogin.username = user.username
this.formLogin.password = user.password
this.submit()
},
/**
* @description 提交表单
*/
// 提交登陆信息
submit () {
this.$refs.loginForm.validate((valid) => {
if (valid) {
// 登陆
// 注意 这里的演示没有传验证码
// 具体需要传递的数据请自行修改代码
this.d2adminLogin({
vm: this,
username: this.formLogin.username,
password: this.formLogin.password
})
} else {
// 登陆表单校验失败
this.$message.error('表单校验失败')
}
})
}
}
}
</script>
<style lang="scss">
@import './style.scss';
</style>