当前位置: 首页 > news >正文

React(二)——Admin主页/Orders页面/Category页面


文章目录

  • 项目地址
  • 一、侧边栏
    • 1.1 具体实现
  • 二、Header
    • 2.1 实现
  • 三、Orders页面
    • 3.1 分页和搜索
    • 3.2 点击箭头显示商家所有订单
    • 3.3 页码按钮以及分页
  • 四、Category页面
    • 4.1 左侧商品添加栏目
    • 4.2 右侧商品上传栏
  • 五、Sellers页面
  • 六、Payment Request 页面(百万数据加载)
  • 七、Deactive Sellers/Seller Request页面
    • 7.1 Deactive
    • 7.2 Seller
    • 7.3 点击绿色小眼睛可以看到seller的详情页


项目地址

  • 教程作者:
  • 教程地址:
  • 代码仓库地址:
  • 所用到的框架和插件:
dbt 
airflow

一、侧边栏

在这里插入图片描述
实现功能:
1.根据权限动态加载sideBar,内容和图标
2. 高亮当前路由的侧边栏

项目地址:SideBar

1.1 具体实现

  1. src/layout/Sidebar.jsx:通过useSate获取所有导航,并且通过useEffect加载getNav方法,通该方法获取admin的菜单
const Sidebar = () => {//1.获取所有的导航栏const [allNav, setAllNav] = useState([]);useEffect(() => {const navs = getNav("admin");setAllNav(navs);}, []);console.log(allNav);
  1. src/navigation/index.js 里创建getNav方法
import { allNav } from "./allNav";export const getNav = (role) => {const finalNavs = [];for (let i = 0; i < allNav.length; i++) {if (role === allNav[i].role) {finalNavs.push(allNav[i]);}}return finalNavs;
};
  1. src/navigation/allNav.js: 创建所有的侧边栏的内容
    在这里插入图片描述
  2. 点击侧边栏高亮显示
//1.获取当前的路由地址
const { pathname } = useLocation();//2.添加样式
{allNav.map((n, i) => (<li key={i}><Linkto={n.path} // 路由地址className={`${pathname === n.path //当前路由和循环出来的路由相同的化,添加高亮,不用则正常? "bg-blue-600 shadow-indigo-500/50 text-white duration-500": "text-[#030811] font-bold duration-200 "} px-[12px] py-[9px] rounded-sm flex justify-start items-center gap-[12px] hover:pl-4 transition-all w-full mb-1 `}><span>{n.icon}</span><span>{n.title}</span></Link></li>
))}            

二、Header

在这里插入图片描述

  1. 响应式按钮:

2.1 实现

  1. src/layout/MainLayout.jsx:添加显示和隐藏SideBar的useState存储状态,并且添加样式
//存储sidebar状态
const [showSidebar, setShowSidebar] = useState(false);//给两个组件里传递初始值和设置方法<Header showSidebar={showSidebar} setShowSidebar={setShowSidebar} /><SideBar showSidebar={showSidebar} setShowSidebar={setShowSidebar} />
  1. src/layout/Header.jsx :小屏幕下出现三个按钮,用来显示和隐藏侧边栏
<div className="fixed top-0 left-0 w-full py-5 px-2 lg:px-7 z-40"><div className="ml-0 lg:ml-[260px] rounded-md h-[65px] flex justify-between items-center justify-center bg-[#b1addf] px-5 transition-all"><divonClick={() => setShowSidebar(!showSidebar)}className="w-[35px] flex lg:hidden"><span><FaList /></span></div></div>
</div>
  1. src/layout/Sidebar.jsx:添加sidebar样式,显示和隐藏功能
<divonClick={() => setShowSidebar(false)}className={`flex duration-200 ${!showSidebar ? "invisible" : "visible"} w-screen h-screen bg-[#8cbce780] top-0 left-0 z-10`}
></div>
<divclassName={`w-[260px] fixed bg-[#e6e7fb] z-50 top-0 h-screen shadow-[0_0_15px_0_rgb(34_41_47_/_5%)] transition-all ${showSidebar ? "left-0" : "-left-[260px] lg:left-0"} `}
>

三、Orders页面

在这里插入图片描述

  • 项目地址:
    Orders页码按钮添加 前端完成

3.1 分页和搜索

  • 实现:5页,10页,20页分页
    在这里插入图片描述

3.2 点击箭头显示商家所有订单

  • 实现:
    1. 点击下箭头,实现商家Id下的所有订单
    2. 订单状态显示

在这里插入图片描述

3.3 页码按钮以及分页

在这里插入图片描述

四、Category页面

  • 原始网页
    在这里插入图片描述
  • 响应式网页:
    -在这里插入图片描述

4.1 左侧商品添加栏目

  • 分析:左侧添加栏只是一个小的Orders页面,所以可以将Orders的主结构复制
    在这里插入图片描述

4.2 右侧商品上传栏

在这里插入图片描述

五、Sellers页面

  • 和Orders页面基本一样
    在这里插入图片描述

六、Payment Request 页面(百万数据加载)

  • 使用React Window 对超大数据加载
    在这里插入图片描述

七、Deactive Sellers/Seller Request页面

7.1 Deactive

在这里插入图片描述

7.2 Seller

在这里插入图片描述

7.3 点击绿色小眼睛可以看到seller的详情页

在这里插入图片描述


http://www.mrgr.cn/news/83031.html

相关文章:

  • (已开源-AAAI25) RCTrans:雷达相机融合3D目标检测模型
  • C语言环形缓冲区:原理、实现与图解详解 环形缓冲区实现
  • 深度学习blog-深刻理解线性变换和矩阵
  • 什么是 ES6 “模板语法” ?
  • [创业之路-241]:《从偶然到必然-华为研发投资与管理实践》-2- IPD流程中的业务线、技术线、职能支撑线
  • vue3探索——使用ref与$parent实现父子组件间通信
  • 120.Jenkins里的Pipeline Script
  • PyCharm简单调试
  • 左神算法基础巩固--3
  • SpringBootWeb案例-1(day10)
  • jenkins入门13--pipeline
  • 2020 年 12 月青少年软编等考 C 语言五级真题解析
  • moviepy 将mp4视频文件提取音频mp3 - python 实现
  • Linux初识——基本指令
  • Requests-数据解析bs4+xpath
  • 【0385】Postgres内核 OS 磁盘上创建 slot ( 3 - 1 )
  • STM32-笔记38-I2C-oled实验
  • STM32-DMA数据转运
  • R语言装环境Gcc报错以及scater包的安装
  • (七)人工智能进阶之人脸识别:从刷脸支付到智能安防的奥秘,小白都可以入手的MTCNN+Arcface网络
  • 用Python实现简单的任务自动化
  • SQL从入门到实战
  • 【WPF】使用BitmapImage给Image的Source赋值,并释放原占用资源,避免删除原文件时导致程序崩溃
  • Vue 组件开发:构建高效可复用的 UI 构建块
  • 数据库语句学习
  • 51c大模型~合集102