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 具体实现
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);
- 在
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;
};
src/navigation/allNav.js
: 创建所有的侧边栏的内容
- 点击侧边栏高亮显示
//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
- 响应式按钮:
2.1 实现
src/layout/MainLayout.jsx
:添加显示和隐藏SideBar的useState存储状态,并且添加样式
//存储sidebar状态
const [showSidebar, setShowSidebar] = useState(false);//给两个组件里传递初始值和设置方法<Header showSidebar={showSidebar} setShowSidebar={setShowSidebar} /><SideBar showSidebar={showSidebar} setShowSidebar={setShowSidebar} />
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>
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 点击箭头显示商家所有订单
- 实现:
- 点击下箭头,实现商家Id下的所有订单
- 订单状态显示
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的详情页
相关文章:
![](https://i-blog.csdnimg.cn/direct/fa6cb9fda727428a8015d240a6ecca88.png)
React(二)——Admin主页/Orders页面/Category页面
文章目录 项目地址一、侧边栏1.1 具体实现 二、Header2.1 实现 三、Orders页面3.1 分页和搜索3.2 点击箭头显示商家所有订单3.3 页码按钮以及分页 四、Category页面4.1 左侧商品添加栏目4.2 右侧商品上传栏 五、Sellers页面六、Payment Request 页面(百万数据加载&a…...
![](https://i-blog.csdnimg.cn/direct/ad1512811c33478894c8463d987cabee.png)
移动端屏幕分辨率rem,less
谷歌模拟器:能直接看到移动端效果 屏幕分辨率 右键电脑桌面 ,点击显示设置 PC端是逻辑分辨率,移动端代码也是参考逻辑分辨率 网页端宽度和逻辑分辨率尺寸相同 手机屏幕尺寸不同,网页宽度均为 100% 所以就需要添加视口标签&#x…...
![](https://i-blog.csdnimg.cn/direct/4695e9fa772c4e16a6d655fa80f20865.png)
Docker Desktop 构建java8基础镜像jdk安装配置失效解决
Docker Desktop 构建java8基础镜像jdk安装配置失效解决 文章目录 1.问题2.解决方法3.总结 1.问题 之前的好几篇文章中分享了在Linux(centOs上)和windows10上使用docker和docker Desktop环境构建java8的最小jre基础镜像,前几天我使用Docker Desktop环境重新构建了一个…...
![](https://i-blog.csdnimg.cn/direct/aced6c384ac242829f7c1b179441b822.png)
数据结构:栈(Stack)和队列(Queue)—面试题(一)
目录 1、括号匹配 2、逆波兰表达式求值 3、栈的压入、弹出序列 4、最小栈 1、括号匹配 习题链接https://leetcode.cn/problems/valid-parentheses/description/ 描述: 给定一个只包括 (,),{,},[,] …...
![](https://i-blog.csdnimg.cn/direct/2b1951aae9684dccbf394ae22667374f.gif)
AR 眼镜之-拍照/录像动效切换-实现方案
目录 📂 前言 AR 眼镜系统版本 拍照/录像动效切换 1. 🔱 技术方案 1.1 技术方案概述 1.2 实现方案 1)第一阶段动效 2)第二阶段动效 2. 💠 默认代码配置 2.1 XML 初始布局 2.2 监听滑动对 View 改变 3. ⚛️…...
![](https://i-blog.csdnimg.cn/img_convert/5f5ec0c78a1f491ebae3cbe34ee4526f.webp?x-oss-process=image/format,png)
2025年中科院分区大类划分公布!新增8155本
2025年中科院分区表变更情况 扩大收录范围 2025年的期刊分区表在原有的自然科学(SCIE)、社会科学(SSCI)和人文科学(AHCI)的基础上,增加了ESCI期刊的收录,并根据这些期刊的数据进行…...
![](https://www.ngui.cc/images/no-images.jpg)
S变换matlab实现
S变换函数 function [st,t,f] st(timeseries,minfreq,maxfreq,samplingrate,freqsamplingrate) % S变换 % Code by huasir Beijing 2025.1.10 % Reference is "Localization of the Complex Spectrum: The S Transform" % from IEEE Transactions on Signal Proc…...
![](https://i-blog.csdnimg.cn/direct/5eed63a0ddae4fe999c40752b5d78623.png)
Springboot——钉钉(站内)实现登录第三方应用
文章目录 前言准备1、创建钉钉应用,并开放网页应用2、配置网页应用各项参数发布版本 前端改造后端逻辑1、获取应用免登录 Access_token2、通过免登录 Access_token 和 Auth_Code 获取对应登录人信息 注意事项 前言 PC端的钉钉中工作台,增加第三方应用&a…...
![](https://i-blog.csdnimg.cn/img_convert/3ef0b3d2e518d98ab54c273c67b50d5e.png)
基于深度学习算法的AI图像视觉检测
基于人工智能和深度学习方法的现代计算机视觉技术在过去10年里取得了显著进展。如今,它被广泛用于图像分类、人脸识别、图像中物体的识别等。那么什么是深度学习?深度学习是如何应用在视觉检测上的呢? 什么是深度学习? 深度学习是…...
![](https://www.ngui.cc/images/no-images.jpg)
cJson——序列化格式json和protobuf对比
cJson——序列化格式json和protobuf对比 1. 更小的消息体积2. 更快的序列化与反序列化速度3. 类型安全4. 向后和向前兼容性5. 更低的带宽消耗6. 高效的编码方式7. 易于跨语言支持8. 支持复杂的数据结构9. 更好的支持大型数据交换总结 Protocol Buffers (Protobuf) 和 JSON 都是…...
![](https://www.ngui.cc/images/no-images.jpg)
搭建一个fastapi的项目,调用ollama服务
1. 项目结构 my_project/ │ ├── app/ │ ├── main.py # FastAPI应用的入口 │ ├── services/ # 包含服务逻辑 │ │ └── ollama_service.py │ ├── models/ # 定义数据模型 │ │ └── response.py │ ├─…...
![](https://www.ngui.cc/images/no-images.jpg)
Wireshark编译手册(Windows)
以下是对 Wireshark 官方文档中“Windows 平台的设置和构建说明”部分的翻译和总结: 2.2. Windows 平台 本节提供了在 Windows 上进行 Wireshark 开发的快速设置指南,包含推荐的配置。 2.2.1. 使用 Microsoft Visual Studio 注意:除非您非…...
![](https://www.ngui.cc/images/no-images.jpg)
在高德地图上加载3DTilesLayer图层模型/天地瓦片
1. 引入必要的库 Three.js:一个用于创建和显示3D图形的JavaScript库。vuemap/three-layer:一个Vue插件,它允许你在高德地图中添加Three.js图层。vuemap/layer-3dtiles:一个用于处理3D Tiles格式数据的Vue插件,可以用来…...
![](https://i-blog.csdnimg.cn/direct/c3316060c4174e568df5d076c0f005c7.png)
深入浅出负载均衡:理解其原理并选择最适合你的实现方式
负载均衡是一种在多个计算资源(如服务器、CPU核心、网络链接等)之间分配工作负载的技术,旨在优化资源利用率、提高系统吞吐量和降低响应时间。负载均衡的实现方式多种多样,以下是几种常见的实现方式: 1. 硬件负载均衡&…...
![](https://www.ngui.cc/images/no-images.jpg)
STM32的存储结构
STM32F103 芯片是基于 ARM Cortex-M3 内核的微控制器,它集成了多种类型的存储器,每种存储器都有其特定的作用和存储对象。以下是关于 STM32F103 中 Flash、ROM 和 SRAM 的详细介绍: 1. Flash Memory (闪存) 作用:Flash 是非易失性…...
![](https://www.ngui.cc/images/no-images.jpg)
@SneakyThrows 注解详解
SneakyThrows 注解详解 1. 基本介绍 SneakyThrows 是 Lombok 提供的注解,用于简化异常处理,自动生成 try-catch 代码块,将检查型异常转换为非检查型异常。 2. 使用对比 2.1 传统写法 public String readFile(String path) {try {return …...
![](https://www.ngui.cc/images/no-images.jpg)
js监测页面可见性
监测切换页面 检测页面的可见性状态document.visibilityState:document.hiddenvisibilitychange 事件 js 检测页面切换至别的应用 检测页面的可见性状态 在JavaScript中,你可以使用Page Visibility API来检测页面的可见性状态。这个API提供了一组接口,允…...
![](https://i-blog.csdnimg.cn/img_convert/687db09453752352bea886c1a5f707a9.png)
Android wifi常见问题及分析
参考 Android Network/WiFi 那些事儿 前言 本文将讨论几个有意思的网络问题,同时介绍 Android 上常见WiFi 问题的分析思路。 网络基础Q & A 一. 网络分层缘由 分层想必大家很熟悉,是否想过为何需要这样分层? 网上大多都是介绍每一层…...
![](https://www.ngui.cc/images/no-images.jpg)
EFCore HasDefaultValueSql
今天小伙伴在代码中遇到了有关 HasDefaultValue 的疑问,这里整理澄清下... 在使用 Entity Framework Core (EFCore) 配置实体时,HasDefaultValue 方法会为数据库列设置一个默认值。该默认值的行为取决于以下条件: 1. 配置 HasDefaultValue 的…...
![](https://i-blog.csdnimg.cn/direct/302bcb33d0f742bbb764862a2a7eef6a.png)
Win10微调大语言模型ChatGLM2-6B
在《Win10本地部署大语言模型ChatGLM2-6B-CSDN博客》基础上进行,官方文档在这里,参考了这篇文章 首先确保ChatGLM2-6B下的有ptuning AdvertiseGen下载地址1,地址2,文件中数据留几行 模型文件下载地址 (注意࿱…...
![](https://www.ngui.cc/images/no-images.jpg)
什么叫区块链?怎么保证区块链的安全性?
区块链(Blockchain)是一种分布式数据库或账本技术,它通过去中心化的方式记录交易或其他数据,并确保这些记录是安全、透明和不可篡改的。区块链最初是作为比特币(Bitcoin)加密货币的基础技术而被公众所知&am…...
![](https://www.ngui.cc/images/no-images.jpg)
一、智能体强化学习——强化学习基础
1.1 强化学习与深度学习的基本概念 1.1.1 强化学习的核心思想 什么是强化学习? 强化学习(Reinforcement Learning, RL):指在与环境(Environment)的反复交互中,智能体(Agent&#x…...
![](https://i-blog.csdnimg.cn/direct/2a8dfdd0108d46cebd0f973744e2999d.png#pic_center)
【DES加密】
什么是DES DES(Data Encryption Standard) 是一种对称加密算法。它的设计目标是提供高度的数据安全性和性能。 DES的概念 DES使用56位的密钥和64位的明文块进行加密。DES算法的分组大小是64位,因此,如果需要加密的明文长度不足64位,需要进…...
![](https://www.ngui.cc/images/no-images.jpg)
.NET中的框架和运行环境
在.NET生态系统中,框架和运行环境是两个不同的概念,它们各自扮演着重要的角色。 下面我将分别介绍.NET中的框架和运行环境,并解释它们之间的区别。 .NET 框架(Frameworks) 框架提供了一套预定义的类库、工具和服务&…...
![](https://www.ngui.cc/images/no-images.jpg)
探索微软 M365 安全:全方位守护数字世界
在当今这个科技呈井喷式飞速发展,数字化浪潮以汹涌澎湃、锐不可当之势席卷全球的时代,企业与个人仿若置身于一片浩瀚无垠、信息奔涌的海洋之中,尽情畅享着技术革新所带来的无穷无尽便利。然而,恰如平静海面下潜藏着暗礁与汹涌暗流,网络安全问题恰似隐匿在暗处、随时可能给…...
![](https://www.ngui.cc/images/no-images.jpg)
深入探索AI核心模型:CNN、RNN、GAN与Transformer
在人工智能的飞速发展中,众多深度学习模型和算法不断涌现,推动了许多领域的进步。特别是在图像识别、自然语言处理、生成建模等方向,AI模型的应用越来越广泛。本文将介绍几种最常用的AI模型,包括卷积神经网络(CNN&…...
![](https://i-blog.csdnimg.cn/direct/0a15fd8c8e9d4d62953e7f740746b71a.png#pic_center)
Java - Http 通讯
Java - Http 通讯 PS: 1. Http 协议 POST | GET 请求; 2. 支持 报头、报文、参数 自定义配置; 3. GET 返回支持 String | Stream; 4. 相关依赖: <dependency><groupId>org.apache.httpcomponents</groupId><…...
![](https://i-blog.csdnimg.cn/direct/6bf681c38fc74869930d29b4c3f9d94f.png)
C++ Qt练习项目 QChar功能测试
个人学习笔记 代码仓库 GitCode - 全球开发者的开源社区,开源代码托管平台 新建项目 设计UI 1、拖入group box去掉名字 2、拖入2个LineEdit 3、拖入两个Label 4、拖入两个PushButton 5、点栅格布局 1、拖入GroupBox 2、拖入4个PushButton 3、点栅格布局 1、拖入GroupBo…...
![](https://i-blog.csdnimg.cn/direct/72659ce75e944a10adbf38eff8e97e56.png)
android 官网刷机和线刷
nexus、pixel可使用google官网线上刷机的方法。网址:https://flash.android.com/ 本文使用google线上刷机,将Android14 刷为Android12 以下是失败的线刷经历。 准备工作 下载升级包。https://developers.google.com/android/images?hlzh-cn 注意&…...
![](https://i-blog.csdnimg.cn/img_convert/db78e95aa0b534289958dcd77ed7dc4c.jpeg)
二叉树层序遍历 Leetcode102.二叉树的层序遍历
二叉树的层序遍历相当于图论的广度优先搜索,用队列来实现 (二叉树的递归遍历相当于图论的深度优先搜索) 102.二叉树的层序遍历 给你二叉树的根节点 root ,返回其节点值的 层序遍历 。 (即逐层地,从左到右…...
![](/images/no-images.jpg)
wordpress多麦/活动推广
${content}你输入的邮件地址曾经通过${type}激活了本站帐号,请使用${type}帐号直接登录。课程习题:提示请选择一个答案提交查看正确答案下一题${option}: ${content}{if multiple}{else}{/if}{if defined("xlist")&&!!xlist.length}{l…...
![](https://img-blog.csdnimg.cn/e88251506113469984813d76337ffe58.png)
php动态网站开发第四章/sem优化师
美国国家健康与营养调查( NHANES, National Health and Nutrition Examination Survey)是一项基于人群的横断面调查,旨在收集有关美国家庭人口健康和营养的信息。 地址为:https://wwwn.cdc.gov/nchs/nhanes/Default.aspx 上期我们…...
![](/images/no-images.jpg)
圣诞节网站模板/美国疫情最新消息
Python 交换变量以下实例通过用户输入两个变量,并相互交换:# -*- coding: UTF-8 -*-# Filename : test.py# 用户输入x input(输入 x 值: )y input(输入 y 值: )# 创建临时变量,并交换temp xx yy tempprint(交换后 x 的值为: {}.format(x…...
![](/images/no-images.jpg)
福建自己建设网站/上海最新新闻事件今天国内
Atitit.软件与编程语言中的锁机制原理attilax总结 1. 用途 (Db,业务数据加锁,并发操作加锁。1 2. 锁得类型 排它锁 “互斥锁 共享锁 乐观锁与悲观锁1 2.1. 自旋锁还是信号量1 2.2. -自动释放还是手动释放1 3. 实现方式,语言方式与…...
![](/images/no-images.jpg)
色块网站/如何做网络营销推广
德国机器人公司MetraLabs GmbH推出的RFID库存机器人TORY近日迎来其一周年使用纪念日,该机器人目前在零售公司Adler Modemarkte AG位于Erfurt的门店投入使用。TORY是世界上第一个投入实际使用的RFID库存机器人。该机器人的读取精度高达90%。此外,该机器人…...
![](https://img-blog.csdnimg.cn/236032b12b1640bbab73928ff35fb4fc.png#pic_center)
wordpress分类页面模板/站长工具seo综合查询
Java流程控制 Java流程控制Java流程控制用户交互 Scanner举例顺序结构选择结构if单选择结构if双选择结构if多选择结构嵌套的if结构Switch选择结构循环结构break & continue练习用户交互 Scanner 可以获取用户的输入: java.util.Scanner 是Java5 的新特征&#…...