react-antd-console 支持主题和多标签了

3 天前
 zhangfg

Github 地址 | 在线预览 | 文档

react-antd-console 是一个后台管理系统的前端解决方案,封装了后台管理系统必要功能(如登录、鉴权、菜单、面包屑、标签页等),帮助开发人员专注于业务快速开发。项目基于 React 18Ant design 5ViteTypeScript 等新版本。对于使用到的各项技术,会被持续更新至最新版本

如果你喜欢这个项目或认为对你有用,欢迎使用体验和 Star

概述

在本项目发布之初,我们额外提供了一个主题版的预览。在主题版中,额外多了主题、多标签、示例等功能。如今,这些功能中的核心部分,经过了优化,已经都被本项目所支持,并保持了整体代码的精简。之前的文章多从技术层面介绍,以下主要从产品层面做一些介绍

布局

主题

Light Dark
Yolk Cosmic
Ocean Monokai

多标签

其他动画效果

搜索表格

后台管理系统一般有很多可搜索的表格页,我们提供了一款强大的组件 admin-search-list,方便快速开发,适用于各种场景。

结尾

如果你喜欢这个项目或认为对你有用,欢迎使用体验和 Star

Github 地址 | 在线预览 | 文档

972 次点击
所在节点    分享创造
22 条回复
Moyyyyyyyyyyye
3 天前
有设计感,不错
blankmiss
3 天前
能不能出一个 精简版 这样用户可以直接 clone 就可以修改
sealinfree
3 天前
挺好看的,现在用着 layui ,一直想换一下,关注了
ixixi
3 天前
这类 xxx admin 我感觉最大的痛点是无法真正做到轻量 和 按需引用
如果可以 npm install xxx 替代 git clone xxx 这样就好了
zhangfg
3 天前
@blankmiss 把示例代码删掉就是精简版。示例代码都在/pages 文件夹里面,相关的多语言、接口 api 、mock 等文件也都在一个文件夹里面内聚。删掉文件夹就可以了。
zhangfg
3 天前
@ixixi 其实我个人观点认为这是一个误解。把代码放到本地,比放到 node_modules 更加可控。如果在 node_modules 里,有 bug 或者有 diy 需求就会比较麻烦。参考下 shadcn/ui 的火热。
为了让用户容易 diy 自己的需求,本项目中的模块设计为高内聚和松散耦合,即各功能模块基本上都是通过<Component />这种使用的,不需要的直接注释掉即可。例如不需要多标签功能,那么直接注释 <Tabs> 就可以了。尽可能做到方便按需使用的效果。
另一方面,本项目虽然是一个模板,但其中的内容也是可以替换 diy 的。除了替换布局和各功能模块,在结构层面,也可以替换 antd ,替换样式框架,替换数据管理方案,甚至替换 react 为 vue 或 angular 。
zhangfg
3 天前
@Moyyyyyyyyyyye 非常感谢支持😊
zhangfg
3 天前
@sealinfree 可以的,如果遇到问题可以联系我
ixixi
3 天前
@zhangfg #6

antd mui 这类也都是把代码放到 node_modules 遇到不可控的不用即可 , 自己再写一个就是了

shadcn/ui 是通过 npx shadcn add xxxx 安装的 和项目中一堆注释实际体验是不一样的
zhangfg
3 天前
@ixixi 体验的不同具体体现在:shadcn/ui 可以一键新增,而本项目可以一键删除😊
sepit
3 天前
不知道你们谁拉过代码看过,github 上的版本和演示的页面可以说是毫不相关,挂羊头卖狗肉了
zhangfg
3 天前
@sepit 你在这瞎扯什么呢,你拉过代码吗?在这里诋毁。你自己 clone 下看看再说。真是造谣 0 成本
zhangfg
3 天前
@sepit 你拉下代码看看是不是和演示一样,然后过来道歉
zhangfg
3 天前
@sepit 请你核实后,务必回来回复,否则误导众人,毕竟本项目是作者辛辛苦苦做出来的,不能被流言蜚语搅臭。我在这里等你
byronzhu
3 天前
支持缓存页面嘛?
zhangfg
3 天前
@byronzhu 目前不支持。但也有办法。可以使用 react@experience 版本,可以支持的了
xshwy
2 天前
蛮好的,怎么实现的多标签呀,之前用 Arco React 版,他们说没有 Vue keepalive 缓存所以无法实现…
zcybupt2016
2 天前
@sepit 真是张嘴就来啊

zhangfg
2 天前
@xshwy 他们说的多标签功能是包含了缓存页面的功能的,所以说没有 keepalive 就没法实现。本项目虽然有多标签,但目前没有实现缓存页面的功能。但是没关系,react 的下一个大的新版本会支持类似于 keepalive 的功能。而目前使用 react@experience 体验版也是可以实现缓存页面功能。
至于界面层面的多标签的实现:是利用了 antd 的 Tabs 组件。传 items 就会展示多标签,传 activeKey 会高亮指定的 tab 。所以只需要管理好 items 数据即可。items 相关数据存到 localstorage,刷新页面就还会继续展示。另外封装好拖拽和右键逻辑以复用,我们就可以只写样式,便可产出多个不同样式的标签页。
再补充一些,如何管理 items 数据:当点击标签,需要跳转路由;当路由切换,需要新增 item ;当点击关闭标签,需要删除当前 item 并需要跳转到下一个 item ;右键菜单还有一些关闭其他,关闭右侧,关闭左侧的逻辑,和上述关闭逻辑是类似的。把这些逻辑封装封装。
zhangfg
2 天前
@zcybupt2016 我怀着感激的心情,非常感谢您的澄清👍

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1093449

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX