react项目 ---- 商品信息以及用户信息管理器

目录

项目源码__github仓库

GitHub - webyifengwu/react: react

登录页面

代码粗略展示图

 登录后首页

商品分类页面

商品管理页面

用户管理页面

 角色管理页面

图形管理页面

 数据库展示


项目源码__github仓库

GitHub - webyifengwu/react: react

登录页面

代码粗略展示图

import "../assets/css/login.scss";
import { useCallback } from "react";
import { Button, Form, Input} from "antd";
import { login } from "../API/url";
import { useNavigate } from "react-router-dom";
import {setSession} from "../API/session"
function Login() {
  //编程式 路由
  const navigate =useNavigate()
  //设置表单数据
  // 账号验证函数
  const validatorUserName = useCallback((_, value) => {
    //正则验证
    //正则表达式
    let reg = /^[\u4e00-\u9fa5_\w]{3,14}$/;

    return new Promise((res, rej) => {
      if (value === "") {
        rej("不能为空");
      } else if (!reg.test(value)) {
        rej("须要提供3-14字");
      } else {
        res();
      }
    });
  }, []);
  //密码验证
  const validatorUserPassword = useCallback((_, value) => {
    //正则验证
    //正则表达式
    let reg = /^[\w_`~!@#$%^&*()+=-\\\]\]{}:;',.<>/?]{6,15}$/;
    return new Promise((res, rej) => {
      if (value === "") {
        rej("不能为空");
      } else if (!reg.test(value)) {
        rej("须要提供6-15个字母或数字");
      } else {
        //必须有返回成功的状态 不然会出现不报错 但是有些功能不能使用的情况
        res();
      }
    });
  }, []);
  //登录按钮事件
  const onFinish = async (values) => {
    if (values.username && values.password) {
      let result = await login(values);
      // 跳转主页
      if(result.code){
        setSession('user',result.data)
        navigate("/home/page",{
          replace:true,
          state:{name:"首页"}
        })
      }
    }
  };
  const onFinishFailed = (errorInfo) => {
    console.log("Failed:", errorInfo);
  };
  return (
    <div className="login_box">
      <div className="center">
        <h2>后台登录入口</h2>
        <Form
          name="basic"
          labelCol={{
            span: 4,
          }}
          wrapperCol={{
            span: 18,
          }}
          initialValues={{
            remember: true,
          }}
          onFinish={onFinish}
          onFinishFailed={onFinishFailed}
          autoComplete="off"
        >
          <Form.Item
            label="账号"
            name="username"
            validateTrigger="onBlur"
            rules={[
              {
                required: true,
                validator: validatorUserName,
              },
            ]}
          >
            <Input />
          </Form.Item>

          <Form.Item
            label="密码"
            validateTrigger="onBlur"
            name="password"
            rules={[
              {
                required: true,
                validator: validatorUserPassword,
              },
            ]}
          >
            <Input.Password />
          </Form.Item>

          <Form.Item
            wrapperCol={{
              offset: 8,
              span: 16,
            }}
          >
            <Button type="primary" htmlType="submit">
              登录
            </Button>
          </Form.Item>
        </Form>
      </div>
    </div>
  );
}

export default Login;

 登录后首页

商品分类页面

商品管理页面

用户管理页面

 角色管理页面

图形管理页面

 数据库展示

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

前端开发 ~~~~ 一枫无

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值