一款轻量、干净的 Vue 后台管理框架

news/2024/7/10 1:45:04 标签: java, vue

开始之前

在开始介绍之前我想谈谈为什么要自己做一个后台管理,我知道很多人都用一些开源的后台管理项目,这些老前辈有很多亮点值得学习,但是存在的一些问题同样不可忽视,我认为很多开发者会被困扰(仅代表个人观点)

  • 技术栈老旧不升级:因为一些历史原因仓库的依赖不再升级,不能做到开箱即用。一些便利性新特性也没有在项目中使用

  • 过度封装:为了追求大而全,展示一个完备的,高复用性的项目而做了层层封装,但是很多组件或方法完全没必要这样做,导致开发者使用后难以订制修改和调试,出现问题溯源难

  • 莫名其妙的轮子和库包:一些老项目在开发中为了便捷开发用了一些陈旧的库或无法稳定维护的个人库来实现功能,而在后续中又因为严重耦合不方便更换而导致一些开发问题或者构建产物问题

  • 简洁与二次开发友好:大部分开发者在使用开源框架只是想快速搭建起自己的业务,但是一些大而全的框架过多的依赖和封装成为了开发者的心智负担,在项目开始后被繁杂的目录和文件所困扰。

  • 代码规范:不少开源项目中为了体现规范,严谨,为项目加上了eslintprettierstylelinthuskycommitlint规范是没有问题的,但是也因此部分开发者在开发中产生一些附带负担,“我只是拉下跑一下,对接一下项目,怎么这么多报错和限制?”此类规范我认为不应被添加,如果团队有需要自行添加即可

我认为一个好的,优秀的框架应当在提供足够的功能前提下尽量解决这些问题,并让框架在提供的功能二次开发友好代码组件的封装复用这三者之间保持一种适度的平衡

介绍

Nova-admin[1]是一个基于Vue3、Vite5、Typescript、Naive UI, 简洁干净后台管理模板,用简单的方式实现完整功能,并尽可能的考虑代码规范,易读易理解无过度封装,方便二次开发。

特性

  • 基于Vue3、Vite5、TypeScript、NaiveUI、Unocss等最新技术栈开发

  • 基于alova[2]封装和配置,提供统一的响应处理和多场景能力

  • 完善的前后端权限管理方案

  • 支持本地静态路由和后台返回动态路由,路由简单易配置

  • 对日常使用频率较高的组件二次封装,满足基础工作需求

  • 黑暗主题适配, 界面样式保持naive风格

  • 仅在提交时进行eslint校验,没有过多限制,开发更简便

  • 界面样式布局灵活可配置

项目预览

  • Nova-Admin 预览[3]

图片

图片

图片

图片

图片

图片

开源地址

GitHub - chansee97/nova-admin: A simple and flexible admin template based on Vue3, Vite, TypeScript, NaiveUI


http://www.niftyadmin.cn/n/5467862.html

相关文章

【二叉树】Leetcode 124. 二叉树中的最大路径和【困难】

二叉树中的最大路径和 二叉树中的 路径 被定义为一条节点序列,序列中每对相邻节点之间都存在一条边。同一个节点在一条路径序列中 至多出现一次 。该路径 至少包含一个 节点,且不一定经过根节点。 路径和 是路径中各节点值的总和。 给你一个二叉树的根…

Ubuntu20.04使用Neo4j导入CSV数据可视化知识图谱

1.安装JDK( Ubuntu20.04 JDK11) sudo apt-get install openjdk-11-jdk -y java -version which java ls -l /usr/bin/java ls -l /etc/alternatives/java ls -l /usr/lib/jvm/java-11-openjdk-amd64/bin/java确认安装路径为/usr/lib/jvm/java-11-openjd…

Array.from() 与 Array.reduce()

Array.from()方法就是将一个类数组对象或者可遍历对象转换成一个真正的数组 Array.reduce()方法对累加器和数组中的每个元素 (从左到右)应用一个函数,将其减少为单个值。 Array.from() // 那么什么是类数组对象呢?所谓类数组对象,最基本的要…

游戏租赁如何利用好闲鱼获客,实现月入10000单月游戏粉引流2000+

1. 个人名片与基本信息扩展 在宝贝85的闲鱼账号中,我们可以看到她的个人信息非常详细。作为一名00后的女生,她喜欢摄影,就读于长沙理工大学,并且拥有极好的芝麻信用。这些信息有助于增加买家的信任度,提高交易成功率。…

AGV无人驾驶跨境运输新模式引领未来物流

agv AGV即“自动导引运输车”,这一概念起源于欧美,在欧美及日韩市场的发展比较成熟,于上世纪末被引入国内。这种自动导引运输车可以广泛应用于汽车、化工、医药以及食品饮料等制造业场景,以及机场、码头等仓储物流行业场景&#x…

Pytorch_training2——network build+model (load+modify)

link import torchvision from torchvision import models resnet50 models.resnet50(pretrainedTrue) #pretrainedTrue 加载模型以及训练过的参数 print(resnet50) # 打印输出观察一下resnet50到底是怎么样的结构visit&modify nn_layer resnet50models.resnet50(pretr…

python 字符串写入 csv 被拆分问题

问题与现象 在使用csv的writerow或者writerows方法时,直接写入字符串会导致字符串被分割成一个字符占一个单元格的问题。 分析 查看writer源码,可以看到源码中的提示Iterable[Any],说明我们所写内容必须转化为列表 class _writer:dialect…

如何通过ArkTS卡片的Canvas自定义绘制能力实现五子棋游戏卡片

介绍 本示例展示了如何通过ArkTS卡片的Canvas自定义绘制能力实现一个简单的五子棋游戏卡片。 使用Canvas绘制棋盘和黑白棋子的落子。通过卡片支持的点击事件进行交互,让用户在棋盘上进行黑白棋子的对局。通过TS的逻辑代码实现五子棋输赢判定、回退等逻辑计算&…