从零开始手把手Vue3+TypeScript+ElementPlus管理后台项目实战系列教程前言&总结

本系列教程的初衷

目前Github和技术社区中有不少功能强大,界面美观的Vue3+ElementPlus通用后台管理系统,但这些系统对初学者都不太友好,导致大家学习路径比较陡峭。于是自己写了这个系列,手把手从头开发一个通用后台管理系统的雏形。从零开始完成这样一个后台系统,可以令新手对于整个系统有个全局的把握,同时掌握系统中大量隐藏的细节。学完该系列教程后,即可去深入学习Github和技术社区中那些功能强大,界面美观的开源系统了。有些同学可能觉得系统长得比较丑,但这是笔者有意而为之,项目中只在整体布局时使用了少量的CSS样式,让读者将注意力放在Vue3和ElementPlus的用法上。

项目功能

本项目没有对应后端项目,也不使用Mock数据,而是选择RealWorld项目的开放接口。

本项目最终演示效果如下:

管理后台在线演示

项目使用当前公司中最常用,最流行的Vue3+TypeScript+ElementPlus快速开发框架,基于RealWorld项目的开放接口,从零开始一步一步实现一个用户注册,登录,文章管理,评论管理,个人信息管理等模块的通用后台管理系统雏形。

项目包含了在Web开发中会遇到的绝大多数基础业务:

  • 通用布局
  • 通用头部
  • 左侧菜单
  • 注册,登录
  • 用户鉴权
  • Axios请求拦截器携带接口访问Token
  • 路由导航守卫控制未登录用户页面访问
  • 通用表格数据展示,查询,通用分页
  • 通用表单实现数据增删改查

学习完该项目后,再去学习Github和技术社区中那些功能强大,界面美观的开源系统就不会一头雾水了。

RealWorld项目简介

RealWorld项目是一个开源的多用户社区系统,用户可以注册、发布文章、评论,点赞,关注,收藏以及对自己的账户进行管理。 由于其包含了在 web 开发中会遇到的绝大多数基础业务,例如列表、增删改查、鉴权、登录等等,所以是很好的一个Web学习项目。

项目地址

RealWorld项目提供了统一API规范:每个实现都按照统一API规范进行开发,确保了每种前端与后端之间具备良好模块化能力。目前RealWorld有超过100个基于各种编程语言、库和框架创建而成的实现版本。

RealWorld接口文档如下:

https://main--realworld-docs.netlify.app/docs/specs/backend-specs/endpoints

https://main--realworld-docs.netlify.app/docs/specs/frontend-specs/swagger

项目源码

源码地址

项目截图

注册

1717637452196.png

登录

1717637411732.png

文章列表,搜索

1717637562134.png

文章增删改查

1717637709972.png

评论管理

1717637797191.png

个人信息管理

1717637883630.png

vue3+typescript+elementplus的项目中使用vite作为构建工具,你可以按照以下步骤进行下载和引用vite: 1. 首先,使用npm初始化一个vite项目。在终端中运行以下命令: ``` npm init @vitejs/app vue3-vite-ts-elementplus --template vue-ts ``` 这将创建一个基于vue3+typescript+elementplus的vite项目。 2. 项目初始化后,默认没有安装router和vuex,你需要使用npm安装它们。在终端中运行以下命令: ``` npm i vue-router@next vuex@next -S ``` 3. 接下来,你需要安装三个额外的插件,以实现按需引用。在终端中运行以下命令: ``` npm i unplugin-vue-components unplugin-auto-import unplugin-element-plus ``` 4. 在项目的配置文件中(一般是vite.config.js),添加以下代码: ```javascript import { defineConfig } from 'vite' import vue from '@vitejs/plugin-vue' import ElementPlus from 'unplugin-element-plus/vite' import AutoImport from 'unplugin-auto-import/vite' import Components from 'unplugin-vue-components/vite' import { ElementPlusResolver } from 'unplugin-vue-components/resolvers' export default defineConfig({ plugins: \[ vue(), ElementPlus({ useSource: true }), AutoImport({ resolvers: \[ElementPlusResolver()\] }), Components({ resolvers: \[ElementPlusResolver()\] }) \] }) ``` 这样,你就成功下载和引用了vite,并配置了按需引用的插件。 请注意,安装unplugin-element-plus之前,你需要先添加sass和sass-loader依赖。 希望这个回答对你有帮助! #### 引用[.reference_title] - *1* [vue3+TypeScript+vite+ElementPlus项目创建及后续优化](https://blog.csdn.net/qq_41854262/article/details/119668655)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [vite+vue3+typeScript+elementPlus(elementUI)搭建项目](https://blog.csdn.net/qq_36462217/article/details/129468816)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值