adminLogin.vue 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. <template>
  2. <div id="adminLogin">
  3. <el-row>
  4. <el-col :span="24">
  5. <el-col :span="5" class="info"> </el-col>
  6. <el-col :span="13" class="login">
  7. <el-col :span="24" class="title">
  8. 管理登录
  9. </el-col>
  10. <el-col :span="24" class="form">
  11. <el-form ref="form" :model="form" :rules="rules" label-width="120px">
  12. <el-form-item label="手机号" prop="phone">
  13. <el-input v-model="form.phone" placeholder="请输入手机号" :minlength="11" :maxlength="11"></el-input>
  14. </el-form-item>
  15. <el-form-item label="登录密码" prop="passwd">
  16. <el-input v-model="form.passwd" placeholder="请输入登录密码" show-password></el-input>
  17. </el-form-item>
  18. <el-form-item label="用户类别" prop="role">
  19. <el-radio v-model="form.role" label="0">管理员</el-radio>
  20. <el-radio v-model="form.role" label="1">合作机构&业务管理员</el-radio>
  21. </el-form-item>
  22. <el-col :span="24" class="btn">
  23. <el-button type="primary" @click="onSubmit">登录</el-button>
  24. </el-col>
  25. </el-form>
  26. </el-col>
  27. </el-col>
  28. <el-col :span="6" class="info"> </el-col>
  29. </el-col>
  30. </el-row>
  31. </div>
  32. </template>
  33. <script>
  34. import { mapState, createNamespacedHelpers } from 'vuex';
  35. export default {
  36. name: 'adminLogin',
  37. props: {},
  38. components: {},
  39. data: function() {
  40. return {
  41. form: {},
  42. rules: {
  43. phone: [{ required: true, message: '请输入手机号', trigger: 'blur' }],
  44. passwd: [{ required: true, message: '请输入密码', trigger: 'blur' }],
  45. role: [{ required: true, message: '请输入用户类别', trigger: 'blur' }],
  46. },
  47. };
  48. },
  49. created() {},
  50. methods: {
  51. onSubmit() {
  52. console.log(this.form);
  53. },
  54. },
  55. computed: {
  56. ...mapState(['user']),
  57. pageTitle() {
  58. return `${this.$route.meta.title}`;
  59. },
  60. },
  61. metaInfo() {
  62. return { title: this.$route.meta.title };
  63. },
  64. };
  65. </script>
  66. <style lang="less" scoped>
  67. .info {
  68. height: 800px;
  69. }
  70. .login {
  71. padding: 15px 0;
  72. .title {
  73. text-align: center;
  74. font-size: 40px;
  75. padding: 40px 0;
  76. }
  77. .form {
  78. .btn {
  79. text-align: center;
  80. }
  81. }
  82. }
  83. </style>