0.0.7 • Published 1 year ago

enn-login-page-vue3 v0.0.7

Weekly downloads
-
License
ISC
Repository
-
Last release
1 year ago

enn-login-page

npm 地址

gitlab 地址

使用步骤

  1. npm i enn-login-page-vue3或者yarn add enn-login-page-vue3
  2. 在页面中使用该组件import { LoginPage, LoginForm } from "enn-login-page-vue3";
  3. 示例
<template>
  <LoginPage title="LoRaWAN网络控制平台">
    <LoginForm
      :if-err="ifError"
      :err-msg="ErrorMsg"
      v-model:loading="loading"
      :has-captcha="false"
      hasRemember
      v-model:remember="remember"
      :formInfo="{
        username: '1234241',
        password: '123424fe1',
      }"
      @login="loginhandle"
    >
    </LoginForm>
  </LoginPage>
</template>

<script setup>
import { LoginPage, LoginForm } from "enn-login-page-vue3";
import { ref } from "vue";

const loading = ref(false);
const ErrorMsg = ref("");
const ifError = ref(false);
// const uerRegExp = reactive([
//   {
//     required: true,
//     pattern: "^.{5,16}$",
//     message: "请输入5 ~ 16位用户名",
//     trigger: ["blur", "change"],
//   },
// ]);
const remember = ref(false);

// function onClick(validate, form) {
//   validate((valid) => {
//     console.log(valid, form);
//   });
// }
function loginhandle(form) {
  // this.$message.success(`使用${JSON.stringify(form)}进行数据请求`);
  loading.value = true;
  ifError.value = false;
  fetch("/api/login", {
    method: "POST",
    body: JSON.stringify(form),
  })
    .then((res) => {
      if (res.data.code === 200) {
        // ...
        loading.value = false;
      }
    })
    .catch(() => {
      setTimeout(() => {
        ErrorMsg.value = "用户名或密码错误";
        ifError.value = true;
        loading.value = false;
      }, 800);
    });
}
</script>

LoginPage API

LoginPage.props

参数类型必填默认值说明
titlestring-系统登录名称
logostring1 logo 图logo
bgImgsarray4 张背景图轮播背景图
bgDurationnumber10每张背景图渐变时长

LoginPage.slots

插槽名默认值说明
默认插槽-登录表单

LoginForm API

LoginForm.props

参数类型必填默认值说明
loadingboolean-登录按钮的 loading
ifErrbooleanfalse是否显示登陆失败提示
errMsgstring''登陆失败提示语
errCloseablebooleantrue登陆失败提示语是否可关闭
showPasswordbooleantrue秘密内容是否可见
hasCaptchabooleanfalse是否有验证码
captchaApiPromise-返回验证码图片
usernameRulesobject参照 el-form-item 的 rules用户名验证规则
passwordRulesobject参照 el-form-item 的 rules密码验证规则
captchaRulesobject参照 el-form-item 的 rules验证码验证规则
hasRememberbooleanfalse是否显示记住密码
rememberbooleanfalse是否记住密码
formInfoobject{}传入账号密码使用{username:xxxx,password:yyy}

LoginForm.slot

插槽名默认值说明
btns登录按钮#btns="{form,validate}"可以获取 form 数据及验证函数
otherBtns#otherBtns="{form,validate}"可以获取 form 数据及验证函数

validate 调用方式:

validate((valid) => {
  console.log(valid, form);
});

LoginForm.events

事件说明
login点击登录,返回登录表单数据
0.0.7

1 year ago

0.0.6

2 years ago

0.0.5

2 years ago

0.0.4

2 years ago

0.0.3

2 years ago

0.0.2

2 years ago