├── README.md ├── linxi-server ├── README.md ├── api │ ├── api.py │ ├── db.py │ ├── menu.py │ └── user.py ├── app.py ├── pip.txt ├── static │ ├── css │ │ ├── layui.css │ │ ├── load.css │ │ └── main.css │ └── images │ │ ├── admin.png │ │ ├── flask-icon.png │ │ ├── linxi.png │ │ ├── pear.png │ │ ├── un26.svg │ │ └── un28.svg ├── templates │ └── index.html ├── test.py └── 数据库.db └── linxi-vue ├── LICENSE ├── README.md ├── index.html ├── package.json ├── public ├── 123.html ├── Vue.png ├── favicon.ico ├── logo.png └── static │ ├── css │ ├── layui.css │ ├── load.css │ └── main.css │ └── images │ ├── admin.png │ ├── flask-icon.png │ ├── linxi.png │ ├── pear.png │ ├── un26.svg │ └── un28.svg ├── src ├── App.vue ├── api │ ├── list.js │ ├── manager.js │ ├── page.js │ ├── public.js │ └── qiandao.js ├── assets │ ├── avart.jpg │ └── logo.png ├── axios.js ├── components │ ├── FormDialog.vue │ └── ListHeader.vue ├── composables │ ├── Form.js │ ├── LoginManage.js │ ├── TabList.js │ ├── auth.js │ ├── util.js │ └── 表单封装代码.md ├── layouts │ ├── admin.vue │ └── components │ │ ├── FHeader.vue │ │ ├── FMenu.vue │ │ └── FTagList.vue ├── main.js ├── pages │ ├── 404.vue │ ├── index.vue │ ├── login.vue │ ├── page │ │ ├── card.vue │ │ └── table.vue │ ├── qiandao │ │ ├── todolist.vue │ │ └── todolog.vue │ ├── screen │ │ ├── index.vue │ │ └── index_old.vue │ ├── system │ │ ├── config.vue │ │ └── menus.vue │ └── user │ │ └── user.vue ├── permission.js ├── router │ └── index.js └── store │ └── index.js └── vite.config.js /README.md: -------------------------------------------------------------------------------- 1 | # linxi-admin 2 | Linxi-admin是简洁的后台管理系统模板,后端基于Flask+Sqlite3,前端基于vue3+vite+ElementPlus 3 | 4 | ### 项目简介: 5 | 6 | # 💐💐💐 `Vue3.2` + `Element-Plus` + `Vite2` + `vuex` 后台管理系统 7 | 8 | ### 采用技术 9 | 10 | - `Vue3.2 + Vue-router4 + Vuex4 + Vite2 + Vueuse` 11 | - `ElementPlus` 12 | - `Naive-ui` 13 | - `Windicss` 14 | 15 | ### 前言 📖 16 | 17 | 项目基于 Vue3.2、Javascript、Vite2、vuex、Element-Plus 开发的一套后台管理模板,目前利用空余时间开发 🕒🕒🕒🕒。项目中借鉴很多优秀的后台管理系统,从 0 开始搭建项目,整个项目还有很多地方不完善。 18 | 19 | ### ?为什么开发这个管理系统 👩‍🔬 20 | 21 | - 主要是想把自己常用的组件进行一个封装 二次巩固 22 | - 目前看了很多优秀的 Vue3 的开源后台管理系统,感觉都非常庞大(想开发一套适合自己的) 23 | 24 | ### 一、在线预览 🛫 25 | 26 | - Link:http://blog.linxi.tk/#/login 27 | - Link:http://blog.linxi.tk/#/home 28 | 29 | ### 二、本地预览 🛫🛫🛫 30 | 31 | ``` 32 | git clone 项目地址 33 | 34 | npm install (依赖安装失败可以尝试cnpm install) 35 | 36 | npm run dev 37 | ``` 38 | 39 | ### 三、🔨 项目功能 40 | 41 | - 🚀 使用 Vue3.2 开发,单文件组件 `<script setup>`开发 42 | - 🚀 采用动态路由菜单模式 43 | - 🚀 数据由Flask后端提供 44 | - 🚀 使用 Vuex getter 模块化管理( 加入了持久化插件) 45 | - 🚀 Axios 的二次封装 (全局错误拦截、常用请求封装、全局请求 Loading、取消重复请求……) 46 | - 🚀 对 el-table 组件进行的二次封装 47 | - 🚀 使用 vue-router 进行路由权限拦截(403 页面)、页面按钮权限配置、路由懒加载 48 | - 🚀 vite.config.js 打包配置(静态资源合并打包/清除 log/gzip 压缩配置等) 49 | 50 | ### 四、项目截图 📷 51 | 52 | 53 | ### 五、文件资源目录 📚 54 | 55 | ```text 56 | ├─ .vscode # vscode推荐配置 57 | ├─ public # 静态资源文件 58 | ├─ src 59 | │ ├─ api # API 接口管理 60 | │ ├─ assets # 静态资源文件 61 | │ ├─ components # 全局组件 62 | │ ├─ composables # 全局工具库API封装(新增、删除、更新、获取函数的封装) 63 | │ ├─ layout # 框架布局 64 | │ ├─ router # 路由管理 65 | │ ├─ store # VUEX模块化管理 66 | │ ├─ pages # 项目所有页面 67 | │ ├─ App.vue # 入口页面 68 | │ ├─ axios.js # Axios封装 69 | │ ├─ permission.js # 权限管理 70 | │ └─ main.js # 入口文件 71 | └─ vite.config.ts # vite 配置 72 | ``` 73 | 74 | ### 六、项目后台接口 🧩🧐 75 | 76 | > 项目后台接口: `Falsk` + `Sqlite3` 等部署后端数据API 77 | 78 | 79 | ### 七、所用技术栈 80 | 81 | ```npm 82 | npm install vite -D 83 | 84 | npm i -D vite-plugin-windicss windicss 85 | 86 | npm install element-plus --save 87 | 88 | npm install @element-plus/icons-vue 89 | 90 | npm install axios 91 | 92 | npm install vue-router@4 93 | 94 | npm i @vueuse/integrations 95 | 96 | // 下面的要依赖上面这个库 97 | npm i @vueuse/integrations 98 | npm i universal-cookie 99 | 100 | cpm install vuex@next --save 101 | 102 | cpm install --save nprogress 103 | 104 | //图片压缩 105 | cpm i unplugin-imagemin -D 106 | 107 | // ~~可视化大屏~~ 108 | // ~~npm install @jiaminghi/data-view~~ 109 | // ~~Echarts~~ 110 | // ~~npm install echarts --save~~ 111 | ``` 112 | ### 报错处理 113 | 114 | #### ~~dataV问题:`@jiaminghi/data-view ` 问题如下解决办法:~~ (原首页是用来做大屏数据显示,觉得有点多余,已去除!) 115 | ``` npm 116 | 1、安装DataV:npm install @jiaminghi/data-view 117 | 2、将node_modules/@jiaminghi/data-view/lib/components/decoration3/src/main.vue中rect标签的:key="i"剪切到有v-for那一层的template中。 118 | 3、将node_modules/@jiaminghi/data-view/lib/components/decoration6/src/main.vue中rect标签的:key="i"剪切到有v-for那一层的template中。 119 | 7 | > 120 | 8 | 129 | 137 | //修改后 138 |