Giter Site home page Giter Site logo

dcn01 / login-register-uikit Goto Github PK

View Code? Open in Web Editor NEW

This project forked from gavinning/login-register-uikit

0.0 0.0 0.0 1.95 MB

简单实用的登录注册页

Home Page: https://gavinning.github.io/login-register-uikit/

JavaScript 8.75% HTML 4.54% Vue 86.71%

login-register-uikit's Introduction

Login-register-uikit

简单实用的登录注册页

Setup

npm i login-register-uikit

Usage

路由配置示例

import Login from '../page/Login.vue'

const routes = [
  {
    path: '/',
    name: 'home',
    component: Home
  },
  {
    path: '/login',
    name: 'login',
    component: Login,
    meta: { status: 0 } // 标记为Login
  },
  {
    path: '/register',
    name: 'register',
    component: Login,
    meta: { status: 1 } // 标记为Register
  },
]

Login.vue

<template>
<login-register
  :formSubmit="formSubmit"
  :formRender="formRender"
/>
</template>
<script>
import LoginRegister from '@/components/LoginRegister'

export default {
  components: { LoginRegister },

  data() {
    return {
      loginRender: {
        title: '登录',
        submit: '立即登录',
        fields: [
          {
            type: 'text',
            field: 'username',
            placeholder: '请输入用户名',
            validate(value) {
              return !!value
            }
          },
          {
            type: 'password',
            field: 'password',
            placeholder: '请输入密码',
            validate(value) {
              return value && value.length >= 6
            }
          }
        ]
      },

      registerRender: {
        title: '注册',
        submit: '立即注册',
        fields: [
          {
            type: 'text', // 输入框类型
            field: 'username', // 输入框绑定字段
            placeholder: '请输入用户名', // 占位文字,错误提示使用该字段
            async validate(value) { // 支持async异步函数
              return !!value
            }
          },
          {
            type: 'password',
            field: 'password',
            placeholder: '请输入密码',
            validate(value) {
              return value && value.length >= 6
            }
          },
          {
            type: 'text',
            field: 'tel',
            maxLength: 11,
            placeholder: '请输入手机号',
            validate(value) {
              return value && value.length === 11
            }
          },
          {
            type: 'passcode', // 验证码定制类型
            field: 'code', // 验证码绑定字段
            wait: 60, // 重试等待时间,单位秒
            maxLength: 4, // 验证码长度
            binding: 'tel', // 关联验证手机号字段,重要!
            disabled: false,
            text: '获取验证码',
            placeholder: '请输入验证码',
            validate(value) {
              return value && value.length === 4
            },
            submit({ tel }) { // 发送验证码逻辑
              console.log('passcode submit', tel)
            }
          }
        ]
      }
    }
  },

  methods: {
    loginSubmit(data) {
      console.log('Login:', data)
    },

    registerSubmit(data) {
      console.log('Register:', data)
    }
  },

  computed: {
    isLogin() {
      return this.$route.meta.status === 0
    },

    formRender() {
      return this.isLogin ? this.loginRender : this.registerRender
    },

    formSubmit() {
      return this.isLogin ? this.loginSubmit : this.registerSubmit
    }
  }
}
</script>

Preview

login-register-uikit's People

Contributors

dependabot[bot] avatar gavinning avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.