news 2026/8/31 15:01:47

货运搬家小程序系统源码开发从0到1(十一):管理后台,Vue3 + Element Plus实例研发

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
货运搬家小程序系统源码开发从0到1(十一):管理后台,Vue3 + Element Plus实例研发

业务三端(用户、司机、订单、钱包)都通了,还差给运营用的管理后台。这篇从零搭后台框架,含一个我亲自踩过的 import 坑。

技术选型一句话

Vue3 + Vite 5 + Element Plus 2.7 + vue-router 4 + axios + ECharts。不用 TS(后台页类型简单,开发速度优先),不引 Pinia(全局状态只有 token,localStorage 足够)。

项目结构

admin-web/ ├── vite.config.js # 端口 5174 + /api 代理到 8080 └── src/ ├── main.js # 入口:挂 ElementPlus(中文 locale) ├── router.js # 路由 + 登录守卫 ├── api.js # axios 实例 + 全部接口函数 └── views/ # Login / Layout / Dashboard / Orders / # Drivers / Users / VehicleTypes / Finance

跨域用 Vite 代理解决(开发期),生产环境由 Nginx 反代同域,代码里请求路径永远写/api/...,两套环境零改动:

// vite.config.jsserver:{port:5174,proxy:{'/api':{target:'http://localhost:8080',changeOrigin:true}}}

登录守卫:10 行搞定

router.beforeEach((to)=>{if(to.path!=='/login'&&!localStorage.getItem('admin_token')){return'/login'}})

管理端用独立的 token(和 C 端 JWT 体系分开,role=ADMIN),axios 拦截器统一带上,401 跳登录页。

我踩的坑:具名导入 vs 默认导出

启动时页面白屏,控制台报createRouter is not a function。原因:

// ❌ router.js 是 export default router,却按具名导入import{createRouter}from'./router'// ✅ 正确:导入默认导出的实例importrouterfrom'./router'app.use(router)

Vue3 全家桶导入方式不统一(createApp是从 vue 具名导入,router 实例是默认导出),写快了就容易混。白屏先看控制台,十有八九是 import 问题。

页面清单与克制

第一版后台只做 6 个页面:仪表盘(下篇展开)、订单管理(筛选/取消)、司机审核、用户列表、车型费率 CRUD、财务流水(含提现打款)。没做的角色权限(RBAC)、操作日志、导出 Excel,全部后置——后台第一用户是你自己的运营,先问他们每天要做什么,再做页面。

Element Plus 的中文化记得配(zhCnlocale),不然分页器全是英文。

本篇成果

后台骨架立起来:登录 → 布局(深色侧边栏 + 顶栏)→ 6 个业务页面路由全通。下篇写仪表盘的 ECharts 数据看板,把"今日营收、订单分布"做成打开后台第一眼看到的东西。


版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/31 15:01:34

SAP UI5 里有没有类似 RxJS take Operator 的机制

在一个 SAP Fiori Elements 的 Object Page 扩展里,经常会碰到这样一类需求。页面的 OData Binding 会持续产生事件,路由可能被多次匹配,某个控件的 press 可能发生很多次,Component 内部的 EventBus 事件也可能被反复发布,但某段业务逻辑只允许在第一次事件出现时执行一次…

作者头像 李华
网站建设 2026/8/31 15:01:06

DSH 插件化命令行工具:从安装到实战排错完整指南

先澄清一个容易让标题党误会的点:DSH 不是音频制作里的“音效插件”,至少不是那种挂载在宿主软件上的混响、压缩器。但如果你愿意换个角度理解,“音效插件”这个比喻反而很贴切——DSH 是给开发工作流“调音”的插件化命令行工具,…

作者头像 李华
网站建设 2026/8/31 14:59:58

OpenClaw维护者圆桌深度解读:从环境部署到Skill开发实践

1. 为什么 OpenClaw 维护者圆桌值得关注 开源项目的价值不完全体现在代码仓库的提交记录里。对于一个快速迭代的 Agent 开发框架,真正决定你能否顺利落地的,往往不是某一版文档,而是维护者如何理解这个项目的边界、如何设计插件机制、如何应对…

作者头像 李华
网站建设 2026/8/31 14:59:12

ANSYS ICEM CFD结构化网格入门:Blocking与六面体网格实战指南

很多刚接触 CFD 的同学,第一次打开 ICEM CFD 都会被界面吓住:到处是标签页、鼠标右键菜单、模型树,几何修复和 Blocking 的术语又绕,跟着视频做又常常在“不知道哪一步点错了”之后彻底卡住。 这次我们把这个工具彻底拆开。 ANSY…

作者头像 李华
网站建设 2026/8/31 14:59:00

双旋翼直升机Simulink仿真建模与PID控制调参全攻略

简介:本资源是一套面向控制工程、航空航天及机器人方向本科生与初阶研究者的双旋翼直升机飞行仿真教学与实践材料,聚焦于Simulink/MATLAB平台下的动态建模、控制系统设计与仿真结果分析。压缩包共5个文件(58KB),含主控…

作者头像 李华