react项目实战学习笔记-学习16-注册逻辑 跨域解决

简介: react项目实战学习笔记-学习16-注册逻辑 跨域解决

修改

webpackDevServer.config.js

proxy: {
      '/api': {
        target: '', // 后台服务地址以及端口号
        changeOrigin: true, //是否跨域
        pathRewrite: { '^/api': '/' }
      }
    },

注册逻辑

import React from "react";
import { Button, Checkbox, Form, Input,message } from "antd";
import { Link, useNavigate } from "react-router-dom";
import "./less/Login.less";
import logoImg from "../assets/logo.png";
import { UserOutlined, LockOutlined } from "@ant-design/icons";
import {RegisterApi} from '../request/api'
export default function Login() {
    const navigate = useNavigate()
  const onFinish = (values) => {
    RegisterApi({
        username: values.username,
        password: values.password
      }).then(res=>{
        if(res.errCode===0){
          message.success(res.message);
          // 跳到登录页
           setTimeout(()=>navigate('/login'), 1500)
        }else{
          message.error(res.message);
        }
      })
  };
  return (
    <div className="login">
      <div className="login_box">
        <img src={logoImg} alt="" />
        <Form
          name="basic"
          labelCol={{
            span: 8,
          }}
          wrapperCol={{
            span: 16,
          }}
          initialValues={{
            remember: true,
          }}
          onFinish={onFinish}
          autoComplete="off"
        >
          <Form.Item
            // label="Username"
            name="username"
            rules={[
              {
                required: true,
                message: "Please input your username!",
              },
            ]}
          >
            <Input
              size="large"
              prefix={<UserOutlined />}
              placeholder="请输入用户名"
            />
          </Form.Item>
          <Form.Item
            // label="Password"
            name="password"
            rules={[
              {
                required: true,
                message: "Please input your password!",
              },
            ]}
          >
            <Input.Password
              size="large"
              prefix={<LockOutlined />}
              placeholder="请输入密码"
            />
          </Form.Item>
          <Form.Item
            name="confirm"
            dependencies={["password"]}
            hasFeedback
            rules={[
              {
                required: true,
                message: "请再次确认密码!",
              },
              ({ getFieldValue }) => ({
                validator(_, value) {
                  if (!value || getFieldValue("password") === value) {
                    return Promise.resolve();
                  }
                  return Promise.reject(new Error("请输入相同密码!"));
                },
              }),
            ]}
          >
            <Input.Password
              size="large"
              prefix={<LockOutlined />}
              placeholder="请再次确认密码"
            />
          </Form.Item>
          <Form.Item>
            <Button size="large" type="primary" htmlType="submit" block>
              注册
            </Button>
          </Form.Item>
        </Form>
      </div>
    </div>
  );
}
相关文章
|
6月前
|
开发框架 前端开发 JavaScript
从零开始学习React Native开发
React Native是一种基于React框架的移动端开发框架,使用它可以快速地构建出高性能、原生的移动应用。本文将从零开始,介绍React Native的基础知识和开发流程,帮助读者快速入门React Native开发,并实现一个简单的ToDo应用程序。
|
23天前
|
XML 前端开发 JavaScript
react学习笔记一:入门级小白到脚手架(create-react-app)开发项目
这篇文章是React的学习笔记,覆盖了从React的基础用法到高级特性,包括组件化、状态管理、生命周期、虚拟DOM等主题,适合React初学者参考。
69 0
react学习笔记一:入门级小白到脚手架(create-react-app)开发项目
|
6月前
|
JavaScript 前端开发 API
如何学习React.js?
【5月更文挑战第27天】如何学习React.js?
71 14
|
5月前
|
前端开发 JavaScript
react 逻辑 AND 运算符 (&&)
react 逻辑 AND 运算符 (&&)
|
5月前
|
移动开发 前端开发 Java
技术笔记:ReactNative学习笔记(一)————(RN)快速入门
技术笔记:ReactNative学习笔记(一)————(RN)快速入门
60 0
|
6月前
|
前端开发
探索React Hooks:一种全新的组件逻辑管理方式
React Hooks是React 16.8版本引入的一项新功能,它改变了我们编写React组件的方式。本文将从Hooks的起源讲起,逐步分析Hooks的优势,并通过具体示例展示Hooks在组件逻辑管理中的应用,旨在帮助读者更好地理解和运用React Hooks。
|
6月前
|
前端开发 JavaScript
深入理解React中的useReducer:管理复杂状态逻辑的利器
深入理解React中的useReducer:管理复杂状态逻辑的利器
|
6月前
|
前端开发 NoSQL 数据库
切图仔做全栈:React&Nest.js社区平台(一)——基础架构与邮箱注册、JWT登录实现
切图仔做全栈:React&Nest.js社区平台(一)——基础架构与邮箱注册、JWT登录实现
|
6月前
|
运维 JavaScript 前端开发
发现了一款宝藏学习项目,包含了Web全栈的知识体系,JS、Vue、React知识就靠它了!
发现了一款宝藏学习项目,包含了Web全栈的知识体系,JS、Vue、React知识就靠它了!
|
6月前
|
前端开发
React学习笔记(一)
React学习笔记(一)