IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> Vue实现邮箱发送邮件进行注册登录功能 -> 正文阅读

[JavaScript知识库]Vue实现邮箱发送邮件进行注册登录功能

最近课程需要,做了个邮箱注册功能,前端发送请求后端接口,进行验证码发送并进行注册。

效果如下图:
在这里插入图片描述

实现代码如下:


<template>

  <div class="main">
    <Header1 title="注册"/>
    <div class="img">挂科难</div>
    <cube-form :model="model" @submit="submitHandler">
      
      <cube-form-group>
          <!--名称-->
        <cube-form-item :field="fields[0]"></cube-form-item>
        
        <!--密码-->
        <cube-form-item :field="fields[1]"></cube-form-item>
        <!--验证码-->
        <cube-form-item :field="fields[2]"> </cube-form-item> 
       <!--邮箱-->
        <cube-form-item :field="fields[3]"> </cube-form-item>  
      </cube-form-group>
        
      
      <cube-form-group>
        <cube-button type="submit">注册</cube-button>
      </cube-form-group>

 

    </cube-form>
    
    <div>  
         <div class="reg">
             <div class="reg">
                <label for="email" class=".la">请输入邮箱获取验证码</label>
            <input type="text" name="email" class="submit1" v-model.trim="email">
               </div>
              <p @click="send" class="submit">立即获取</p>
         </div>
      </div>
       <!-- <cube-form-group>
        <cube-button type="submit">注册</cube-button>
      </cube-form-group> -->
    <router-link to="/login" class="reg">登录</router-link> 
  </div>

</template>

<script>
//注册接口
import { registerApi } from "@/api/getData.js";
import Header from '../CourseDetail/Components/Header.vue';
import {sendCode} from "@/api/getData.js";
import Header1 from "@/components/Header1";

export default {
  components: { 
    Header ,
    Header1,
  },
  data() {
    return {
      model: {
         email: '',
        pwdValue: "",
        nameValue: "",
        codeValue:"",
        emailValue: "",
      },
      fields: [ {
          type: "input",
          modelKey: "nameValue",
          label: "名称",
          props: {
            placeholder: "请输入名称"
          },
          rules: {
            required: true
          },
          messages: {
            required: "名称不能为空"
          }
        },{
          type: "input",
          modelKey: "pwdValue",
          label: "密码",
          props: {
            placeholder: "请输入密码",
            type: "password",
            eye: {
              open: false
            }
          },
          rules: {
            required: true
          },
          messages: {
            required: "密码不能为空"
          }
        },
          {
          type: "input",
          modelKey: "codeValue",
          label: "验证码",
          props: {
            placeholder: "请输入验证码",
            type: "number",
            eye: {
              open: false
            }
          },
          rules: {
            required: true
          },
          messages: {
            required: "验证码不能为空"
          }
        }, {
          type: "input",
          modelKey: "emailValue",
          label: "邮箱",
          props: {
            placeholder: "请输入您的邮箱"
          },
          rules: {
            required: true
          },
          messages: {
            required: "邮箱不能为空"
          }
        }
       
      ]
    };
  },
  methods: {
    submitHandler(e, model) {
      e.preventDefault();
      //调用注册接口
      registerApi(model.emailValue, model.pwdValue, model.nameValue,model.codeValue).then(
        res => {
          if (res.data.code === 0) {
            const toast = this.$createToast({
              txt: "注册成功",
              type: "correct",
              time: 1500
            });
            toast.show();
          }else if(res.data.code===240003){
             const toast = this.$createToast({
              txt: "验证码错误",
              type: "error",
              time: 1500
            });
            toast.show();
          }else{
             const toast = this.$createToast({
              txt: "注册失败,账号已注册",
              type: "error",
              time: 1500
            });
            toast.show();
          }
        }
      );
    },
    send() {
    //  e.preventDefault();
      //调用验证码发送接口
      sendCode(this.email).then(
        res => {
          if (res.data.code === 0) {
            const toast = this.$createToast({
              txt: "发送成功",
              type: "correct",
              time: 1500
            });
            toast.show();
          }else if(res.data.code === 240002){
             const toast = this.$createToast({
              txt: "验证码发送过快,请稍后再试",
              type: "error",
              time: 1500
            });
            toast.show();
          }else if(res.data.code === 240001){
             const toast = this.$createToast({
              txt: "邮箱号不合法,请重输入",
              type: "error",
              time: 1500
            });
            toast.show();
          }else{
             const toast = this.$createToast({
              txt: "发送失败,请重试",
              type: "error",
              time: 1500
            });
            toast.show();
          }
        }
      );
    },
    
    
  }
};
  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2022-04-07 22:34:53  更:2022-04-07 22:38:33 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 2:41:09-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码