vue3 + TS + vite 搭建中后台管理系统(完整项目)

news/2024/5/20 2:53:16 标签: 前端, 数据大屏, TS, echarts

vue3 + TS + vite 搭建中后台管理系统(完整项目)

    • 前言
    • 1、搭建步骤及方法
    • 2、集成多种插件功能,实现中后台按需使用
    • 3、新手学TS如何快速进入状态、定义TS类型
    • 4、layout搭建四款常见风格
    • 6、大屏搭建效果
    • 5、vue3+Ts+运营管理系统
      • 总结:

前言

要成功,先发疯,头脑简单往前冲!

三金四银,金九银十,多学知识,也不能埋头苦干,要成功,先发疯,头脑简单往前冲!

项目主要架构:
  1、安装框架开发
  2、配置vite 中使用 less 或 scss
  3、配置vite自动导入语法插件开发
  4、安装路由Router开发
  5、安装pinia(vue3+ts使用pinia更好用,vuex使用ts没有pinia优雅)
  6、安装element-ui-plus
  7、配置vite.config.ts
  8、新建confing文件夹,分别配置一些共用的ts
  9、layouts搭建菜单组件开发
    a、新建layouts模块文件
    a-1、index.vue 主要入口(一次性加载方式)[二选一个入口即可]
    a-2、indexAsync 主要入口(异步加载方式)[二选一个入口即可]
    a-3、LayoutVertical 分栏主入口[纵向:vertical]
    a-4、LayoutClassic 分栏主入口[经典:classic]
    a-5、LayoutTransverse 分栏主入口[横向:transverse]
    a-6、components 布局组件模块聚合[布局组件:components]
      a-6-1、Menu [左侧菜单栏]
      a-6-2、Main [右侧布局栏]
      a-6-3、Header [头部栏]
      a-6-4、Tabs [顶部Tabs切换]
      a-6-5、Footer [底部页脚]
      a-6-6、ThemeDrawer [布局切换栏]
    a-7、创建MenuList数据开发
    a-8、封装并异步调用接口数据开发
    a-9、安装mockjs,实现数据模拟开发
    a-10、安装nprogress进度条简单开发
  10、路由权限配置
  11、API接口配置
  12、登录页面开发
  13、首页开发
  14、安装拖动插件开发
  15、富文本插件安装开发
  16、引导页开发
  17、拖拽组件开发
  18、分屏开发
  19、在线打印开发
  20、charts开发
  21、高德地图开发
  22、西瓜视频开发
  23、数据大屏开发
  24、搭建框架插件安装注意问题
  25、TS类型基础定义文档说明

在这里插入图片描述

1、搭建步骤及方法

搭建方法参考上一篇文章
https://blog.csdn.net/weixin_44873831/article/details/129728248

1、安装框架:
    npm create vite@latest;

2、配置vite 中使用 less 或 scss:
    npm add -D less  或  npm add -D sass

3、配置vite自动导入语法插件
    npm install -D unplugin-vue-components unplugin-auto-import
    a、使用 npm install -D unplugin-vue-components unplugin-auto-import
    b、在vite.config.ts中引入
    c、出现报错,(找不到模块“unplugin-vue-components/vite”。你的意思是要将 "moduleResolution" 选项设置为 "node",还是要将别名添加到 "paths" 选项中?ts(2792))
    d、将tsconfig.json和tsconfig.node.json中的 "moduleResolution" 选项设置为 "node"
    e、删除"allowImportingTsExtensions",从 TypeScript 3.8 开始,这个选项已经被废弃了;

2、集成多种插件功能,实现中后台按需使用

框架集成多种插件,项目做并不是所有都能用到,在使用时可以按照需要的插件方法

在这里插入图片描述

TSTS_80">3、新手学TS如何快速进入状态、定义TS类型

TS官网
新手建议先看看官网,了解大概后进行实操;
如果不知道从哪里开始,接着往下看:

// 了解基本的类型定义
	1、any // any类型,则允许被赋值为任意类型
    2void // void类型(空值),表示没有任何返回值的函数
    3、Interfaces // 接口定义类型
	a、 任意值 [let str:string;]: 如果是一个普通类型,在赋值过程中改变类型是不被允许的,任意值(Any)用来表示允许赋值为任意类型
        str = '123'

    b、 联合类型 [let str: string | number;]: 表示取值可以为多种类型中的一种
        str = '123'
        str = 123

    c、 数组类型的定义 [let arr: number[]]: 简单的方法是使用「类型 + 方括号」来表示数组:
        arr = [1,2,3]

    d、 接口(Interfaces)、泛型(Generics)、类(Classes)、枚举类型(Enums)等

    e、 泛型(Generics)是指在定义函数、接口或类的时候,不预先指定具体的类型,而在使用的时候再指定类型的一种特性。

        `泛型变量T` T表示任何类型
        说明:`泛型的语法是尖括号 <> 里写类型参数,一般可以用T来表示`

        示例1// let swap = ('1',2)
          function swap<T, U>(tuple: [T, U]): [U, T]{
            return [tuple[1], tuple[0]]
          }
          function swap(tuple) {
            return [tuple[1], tuple[0]]
          }

        示例2let arr:Array<number> =[1,2,3];
        // 定义多个类型
        let arr:Array<number|string> =['1',2,3];
        了解更多往下看;

4、layout搭建四款常见风格

这里封装了4款风格切换
layouts文件夹

第一款:


在这里插入图片描述


第二款:


在这里插入图片描述


第三款:


在这里插入图片描述


第四款:


在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

6、大屏搭建效果

大屏采用了 datav-vue3、echarts框架搭建
推荐使用:
官网:https://datav-vue3.netlify.app/
npm:pnpm install @kjgl77/datav-vue3
配合echarts
官网:https://www.makeapie.cn/echarts
npm:npm install echarts --save
获取源码接着往下看!


第一款:拼夕夕大屏数据


在这里插入图片描述

第二款:城市大屏数据


在这里插入图片描述

大屏模块文件目录


在这里插入图片描述

5、vue3+Ts+运营管理系统

-项目预览-👆


总结:

前端路上 | 所知甚少,唯善学。
各位小伙伴有什么疑问,欢迎留言探讨。

— 关注我:前端路上不迷路 —





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

相关文章

QT上位机开发(简易图像处理软件)

【 声明&#xff1a;版权所有&#xff0c;欢迎转载&#xff0c;请勿用于商业用途。 联系信箱&#xff1a;feixiaoxing 163.com】 大家都知道图像处理非常地重要&#xff0c;因为它不仅仅是可以用于拍照美颜&#xff0c;而且在工业、医疗和军事等方面也发挥着巨大的作用。另外一…

x-cmd pkg | trafilatura - 网络爬虫和搜索引擎优化工具

目录 简介首次用户技术特点竞品和相关作品进一步阅读 简介 trafilatura 是一个用于从网页上提取文本的命令行工具和 python 包: 提供网络爬虫、下载、抓取以及提取主要文本、元数据和评论等功能可帮助网站导航和从站点地图和提要中提取链接无需数据库&#xff0c;输出即可转换…

[C#]C# OpenVINO部署yolov8实例分割模型

【官方框架地址】 https://github.com/ultralytics/ultralytics.git 【算法介绍】 YOLOv8 抛弃了前几代模型的 Anchor-Base。 YOLO 是一种基于图像全局信息进行预测的目标检测系统。自 2015 年 Joseph Redmon、Ali Farhadi 等人提出初代模型以来&#xff0c;领域内的研究者们…

python+playwright 学习-87 launch_persistent_context开启手机模式

launch_persistent_context 模式启动浏览器时,开启手机模式 selenium 设置手机模式 在selenium上设置手机模式代码 # coding:utf-8 from selenium import webdriver from selenium.webdriver.chrome.options import Optionsurl = "https://login.m.taobao.com/msg_log…

【小程序开发】解决 HBuilder X “[error] IDE service port disabled“无法运行问题

开发微信小程序时&#xff0c;在HBuilder X上方菜单点击”运行“->”运行到小程序模拟器“->”微信开发者工具“后&#xff0c;控制台输出了”[error] IDE service port disabled. To use CLI Call, please enter y to confirm enabling CLI capability, or manually ope…

FindMy技术用于鼠标

鼠标是计算机的标准配置之一&#xff0c;其设计初衷是为了使计算机的操作更加简便快捷&#xff0c;减少用户在操作中的负担。用户可以通过移动鼠标&#xff0c;实现光标的精确移动&#xff0c;进而选择、拖拽、复制、粘贴等操作。这种操作方式&#xff0c;使得计算机的操作变得…

NLP基础——中文分词

简介 分词是自然语言处理&#xff08;NLP&#xff09;中的一个基本任务&#xff0c;它涉及将连续的文本序列切分成多个有意义的单元&#xff0c;这些单元通常被称为“词”或“tokens”。在英语等使用空格作为自然分隔符的语言中&#xff0c;分词相对简单&#xff0c;因为大部分…

uniapp中组件库丰富的Switch 开关选择器使用方法

目录 #平台差异说明 #基础使用 #加载中 #禁用switch #自定义尺寸 #自定义颜色 #自定义样式 #异步控制 API #Switch Props #Switch Event 选择开关用于在打开和关闭状态之间进行切换。 #平台差异说明 App&#xff08;vue&#xff09;App&#xff08;nvue&#xff0…