Oddbean new post about | logout
 	<template>
    <div class="login">
        <el-form :rules="rules" ref='ruleForm' label-width="80px" label-position="right" v-model="user">
            <el-form-item prop="username">
                <el-input placeholder="用户名"></el-input>
            </el-form-item>
             <el-form-item prop="password">
                <el-input type="password" placeholder="密码"></el-input>
            </el-form-item>
        </el-form>
        <div slot="footer">
		    <el-button type="primary" @click="login('ruleForm')">登录</el-button>
		    <el-button type="info" @click="resetTempPwd">重置密码</el-button>
		</div>
    </div>
</template>
<script>
import { mapState, mapMutations } from 'vuex'
import { login, resetTempPwd } from '../../utils/api.js'
export default {
  data() {
    return {
      user: {},
      rules: {
        username: [{ required: true, message: '请输入用户名', trigger: 'blur' }],
        password: [{ required: true, message: '请输入密码', trigger: 'blur' }]
      },
      pwdError: '',
      loading: false
    };
  },
  computed: {
    ...mapState(['username','isLogin'])
  },
  methods: {
    ...mapMutations(['loginUser']),
	  resetTempPwd(){
	  	this.$confirm('确认重置密码吗?', '提示', {
          confirmButtonText: '确定',
          cancelButtonText: '取消'
        }).then(async () => {
          let res = await resetTempPwd()
          this.pwdError = ''
          if (res) {
            this.$router.push({ path: '/resetPwd' })
          } else {
            this.$message({
              message: '重置密码失败',
              type: 'error'
            })
          }
        }).catch(() => {
          console.log('取消')
        })
	  },
	   login(formName) {
        this.$refs[formName].validate((valid, fieldsView) => {
          if (!valid) {
            return false;
          }
          let { username, password } = this.user
          this.loading = true
          login({username,password}).then(res=>{
            this.$store.commit('loginUser',res)
            this.$router.push('/index')
            this.$message({
              message: '登录成功',
              type: 'success'
            })
          }).catch(() => {
            this.pwdError = ''
            this.loading = false
          });
        });
      }
  }
}
</script>