前端工作小结44-初始登录样式

简介: 前端工作小结44-初始登录样式
<!--GY歌谣控制登录页面的功能-->
<template>
  <div class="main">
    <div>
   <h1> <img src="./geyao.png" style="width: 29px;height: 29px;margin-right: 10px;line-height: 29px" alt="">星传经管系统</h1>
    </div>
   <!-- <h1>欢迎登录</h1>-->
    <div class="login-head">
    <div class="login-form">
      <!--登录的用户名-->
      <el-form  :model="form" label-width="40px">
        <el-form-item  label="用户">
          <el-input v-model="form.account" />
        </el-form-item>
        <!--登录的密码-->
        <el-form-item  label="密码" >
          <el-input v-model="form.password" show-password/>
        </el-form-item>
        <el-form-item>
          <!--登录按钮 登录的时候调用方法-->
          <el-button
            type="primary"
            style="display: block; width: 100%"
            @click="login"
          >
            登录
          </el-button>
        </el-form-item>
      </el-form>
    </div>
    </div>
    <mode-selection-dialog ref="mode" @select="modeSelected" />
  </div>
</template>
<script>
import Vue from "vue";
/*状态管理*/
import store from "@/store";
/*引入调用的方法*/
import { postAction } from "@/api";
import {ACCESS_MODE, ACCESS_TOKEN} from "@/store/KeyConstants";
import { HOME_PATH } from "@/router/staticRoutes";
import { SET_USER, SET_DEPARTMENT, SET_MODE } from "@/store/mutation-types";
/*引入封装的组件 登录框组件*/
import ModeSelectionDialog from "./ModeSelectionDialog";
export default {
  name: "Login",
  components: { ModeSelectionDialog },
  data() {
    return {
      /*登录界面存储账号和密码*/
      form: {
        /*存储账号*/
        account: "",
        /*存储密码*/
        password: ""
      },
      url: {
        login: "/user/login"
      }
    };
  },
  created() {
  },
  methods: {
    /*登录的方法*/
    login() {
      /*第一个参数传入要跳转的链接地址  第一个传入数据参数*/
      postAction(this.url.login, this.form).then(res => {
        if (res.code === 0) {
        /*  /!*设置token令牌*!/*/
          Vue.ls.set(ACCESS_TOKEN, res.data.access_token);
          /*Vue.ls.set(ACCESS_MODE, res.data.mode);*/
       /*   /!*获取user的数据*!/*/
          const user = res.data.user;
          const dept = user.department;
          const properties = dept.property.split(",");
        /*  所有的状态开始存储到vuex*/
          store.commit(SET_USER, {
            name: user.name,
            role: user.role
          });
          store.commit(SET_DEPARTMENT, {
            id: dept.id,
            name: dept.name,
            property: properties
          });
          // select mode
          if (!properties || properties.length === 0) {
            this.$message.error("请设定部门属性!");
          } else if (properties.length === 1) {
            this.modeSelected(properties[0]);
          } else if (properties.length === 2) {
            this.$refs["mode"].show();
          } else {
            this.$message.error("部门属性错误!");
            console.error(res);
          }
        } else {
          this.$message.warning("用户名或密码错误!");
        }
      }).catch(error => {
        console.log(error);
      }
      );
    },
    modeSelected(mode) {
   /*   if(mode==0){
        store.commit(SET_MODE, mode);
        this.$router.push(HOME_PATH);
        Vue.ls.set(ACCESS_MODE,mode);
      }else{
        store.commit(SET_MODE, mode);
        this.$router.push(HOME_PATH);
        Vue.ls.set(ACCESS_MODE,mode);
      }*/
      /*只使用一个路由*/
      store.commit(SET_MODE, mode);
      this.$router.push(HOME_PATH);
      Vue.ls.set(ACCESS_MODE,mode);
    },
  }
};
</script>
<style lang="scss" scoped>
.main {
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  background: url("./login_bg.jpg") no-repeat;
  background-size: cover;
  .login-form{
    background-color: #F5F5F5;
    padding: 50px;
    min-width: 300px;
  }
}
</style>

image.png

相关文章
|
5月前
|
前端开发 JavaScript API
前端 excelex 包可将数据保存为 xls、xlsx、csv、txt 文件(支持单元格样式、合并单元格等)
前端 excelex 包可将数据保存为 xls、xlsx、csv、txt 文件(支持单元格样式、合并单元格等)
65 1
|
7月前
|
前端开发 数据可视化 网络协议
GIS前端-图形样式编辑
GIS前端-图形样式编辑
34 0
|
7月前
|
前端开发 数据安全/隐私保护
【前端组件】登录组件需求整理[待续]
【前端组件】登录组件需求整理[待续]
39 0
|
1天前
|
前端开发 开发者 UED
【Flutter前端技术开发专栏】Flutter中的图标、字体与样式管理
【4月更文挑战第30天】本文介绍了在Flutter中管理图标、字体和样式的做法。Flutter提供`Icons`类用于内置矢量图标,支持第三方图标库如FontAwesome。自定义字体可通过添加字体文件至`assets`目录并配置`pubspec.yaml`,然后使用`TextStyle`设置。借助`ThemeData`,开发者能统一管理应用主题样式,局部样式可覆盖全局。通过集中管理样式,提升代码复用性和应用一致性。
【Flutter前端技术开发专栏】Flutter中的图标、字体与样式管理
|
12天前
|
NoSQL JavaScript 前端开发
报错场景:ant design vue前端登录时,输入的验证码是对的,但是一直提上验证码错误,登录不进去 报错信息(Error in execution; nested exception)
报错场景:ant design vue前端登录时,输入的验证码是对的,但是一直提上验证码错误,登录不进去 报错信息(Error in execution; nested exception)
18 0
|
8月前
|
开发框架 前端开发 JavaScript
前端框架Layui的使用讲解(Layui搭建登录注册页面)(一)
前端框架Layui的使用讲解(Layui搭建登录注册页面)
437 0
|
4月前
|
前端开发
elementui-upload组件自定义样式上传(upload中常用的属性,但是网络上却找不到教程)(解决bug删除之后再次上传会上传删除的图片)专注后端工程师的前端速成
elementui-upload组件自定义样式上传(upload中常用的属性,但是网络上却找不到教程)(解决bug删除之后再次上传会上传删除的图片)专注后端工程师的前端速成
70 0
|
5月前
|
监控 前端开发 应用服务中间件
Zabbix【部署 01】Zabbix企业级分布式监控系统部署配置使用实例(在线安装及问题处理)程序安装+数据库初始+前端配置+服务启动+Web登录
Zabbix【部署 01】Zabbix企业级分布式监控系统部署配置使用实例(在线安装及问题处理)程序安装+数据库初始+前端配置+服务启动+Web登录
417 0
|
6月前
|
前端开发 程序员
前端反卷计划-组件库-03-组件样式
前端反卷计划-组件库-03-组件样式
|
6月前
|
JavaScript 前端开发 Java
在Vue中通过ElementUI构建前端页面【登录,注册】,在IEDA构建后端实现前后端分离
在Vue中通过ElementUI构建前端页面【登录,注册】,在IEDA构建后端实现前后端分离
161 0