vue3+ts+vite手把手教你创建Vue3项目

news2025/1/16 6:57:38

概述

简介: 图文详解,带你使用 Vite 从零到一搭建 Vue3 项目,快速完成项目基建
技术栈: Vue3 + TypeScirpt + Vite + Element-plus
内容: husky代码提交校验、router安装及模块化路由、动态路由siadebar封装、less/scss使用,pinia,Element-plus使用及组件二次封装等
环境: 要求 Node.js 版本在 V16以上
代码: 相关代码已放 gitee 开源👉 https://gitee.com/jnfeelings/vitality-admin


文章目录

  • 概述
  • 一、创建 Vue3项目
      • 1.1 安装 Vite
      • 1.2 创建项目
          • 1.2.1 运行上述命令后,会让我们输入项目名称。可以写一个 vue3-study
          • 1.2.2选择项目模板,此处选择 Vue,然后回车确定
          • 1.2.3 选择 TypeScript,回车确定
          • 1.2.3 执行命令。此处推荐使用 pnpm 进行装包
          • 1.2.5 运行项目
          • 1.2.6 创建项目成功
  • 二、安装 pnpm
  • 三、scss安装
      • 3.1 安装
      • 3.2 使用示例
  • 四、安装 element-plus 组件库
  • 五、husky、stylelint代码提交校验
  • 六、@路径别名
  • 七、router 安装及模块化
  • 八、vue-i18n中英文切换
  • 九、自定义滚动条样式
  • 十、页面切换过渡动画
  • 十一、安装nprogress
  • 十二、封装左侧menu菜单组件
  • 十三、element-plus全局主题色


一、创建 Vue3项目

1.1 安装 Vite

兼容性注意
Vite 需要 Node.js 版本 >= 12.0.0。我建议使用 v16版本的 Node.js

使用 npm:

npm init vite@latest

使用 yarn:

yarn create vite

使用 pnpm:

pnpm create vite

1.2 创建项目

npm create vite@latest 
1.2.1 运行上述命令后,会让我们输入项目名称。可以写一个 vue3-study

在这里插入图片描述

1.2.2选择项目模板,此处选择 Vue,然后回车确定

在这里插入图片描述

1.2.3 选择 TypeScript,回车确定

在这里插入图片描述

1.2.3 执行命令。此处推荐使用 pnpm 进行装包

在这里插入图片描述

1.2.5 运行项目

在这里插入图片描述

1.2.6 创建项目成功

在这里插入图片描述


二、安装 pnpm

搭建Vue3项目,推荐使用 pnpm 进行装包。pnpm是 Node.js安装应用模块的包管理器。它比 npm 包管理器的速度更快、效率更高。

npm install pnpm -g

三、scss安装

Vue3项目可以使用 less 和 scss 作为预处理器。此处推荐使用 Scss

3.1 安装

npm:

npm install sass -d

pnpm:

pnpm install sass -d

3.2 使用示例

<style lang="scss" scoped>
.main-container {
	background-color: #2ed3e8;
	.title {
		font-size: 18px;
	}
}
</style>

四、安装 element-plus 组件库

安装 element-plus组件库,根据官方推荐,完成组件按需自动引入。后续二次封装element-plus组件的文章也会陆续更新

文章链接👉:vue3+ts+vite项目引入Element-plus,配置组件按需自动导入


五、husky、stylelint代码提交校验

现在开源项目和企业项目中,都有用到 husky、styelint、commitlint实现代码提交校验,实现代码规范统一

文章链接👉:vue3+ts+vite配置husky、stylelint、commitlint,配置git提交代码校验


六、@路径别名

项目中一般都会配置@路径别名,这样在写路径时更加直观方便

文章链接👉:vue3+ts+vite配置@路径别名,实现@代替/src


七、router 安装及模块化

一篇文章搞定 vue-router的安装和使用,并将不同模块的 router 分开管理,提高代码的可维护性

文章链接👉:vue3+ts+vite配置router,实现路由跳转并完成路由模块化


八、vue-i18n中英文切换

安装 vue-i18n,实现项目一键切换中英文

文章链接👉:vue3+ts+vite配置中英文切换,安装vue-i18n完成国际化


九、自定义滚动条样式

全局自定义滚动条样式

文章链接👉:vue3+ts+vite自定义滚动条样式


十、页面切换过渡动画

路由切换过渡动画配置

文章链接👉:vue3+ts+vite实现页面切换过渡动画


十一、安装nprogress

图文详解安装 nprogress,配置路由跳转时的页面加载进度条

文章链接👉:vue3+ts+vite安装nprogress,实现路由加载进度条


十二、封装左侧menu菜单组件

基于 element-plus组件库中的 el-menu组件二次封装左侧菜单栏组件,实现根据路由列表,动态渲染出左侧菜单导航栏

文章链接👉:vue3+ts+vite项目基于el-menu封装左侧菜单栏组件


十三、element-plus全局主题色

根据项目要求,完成element-plus组件库的自定义主题色配置

文章链接👉:vue3+ts+vite全局配置Element-Plus主题色

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/869331.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

GrapeCity Documents for Excel, .NET Crack

GrapeCity Documents for Excel, .NET 增加了对双面打印的支持。 GcExcel.NET支持PrintOutOptions类中的Duplex枚举&#xff0c;以启用/禁用页面上的双面打印。 枚举中有四个选项&#xff0c;用户可以相应地使用它们来打印工作簿&#xff1a; 双面打印。Default表示打印机的默认…

ElasticSearch安装与启动

ElasticSearch安装与启动 【服务端安装】 1.1、下载ES压缩包 目前ElasticSearch最新的版本是7.6.2&#xff08;截止2020.4.1&#xff09;&#xff0c;我们选择6.8.1版本&#xff0c;建议使用JDK1.8及以上。 ElasticSearch分为Linux和Window版本&#xff0c;基于我们主要学习…

EMQX物联网竟然用这个?(一)——简介

一、前言 我们这些年&#xff0c;“物联网”这个名称越来越被大家所知道了。 物联网 &#xff08;Internet of things&#xff09;&#xff0c;简称 IoT&#xff0c;这个概念在1991年就被漂亮国提出来了&#xff0c;解释一下就是万物可以通过互联网连接起来&#xff0c;可以进…

uniapp 官方扩展组件 uni-combox 实现:只能选择不能手写(输入中支持过滤显示下拉列表)

uniapp 官方扩展组件 uni-combox 实现&#xff1a;只能选择不能手写&#xff08;输入中支持过滤显示下拉列表&#xff09; uni-comboxuni-combox 原本支持&#xff1a;问题&#xff1a; 改造源码参考资料 uni-combox uni-combox 原本支持&#xff1a; 下拉选择。输入关键字&am…

MySQL 数据库文件的导入导出

目录 数据库的导出 导出整个数据库 导出数据库中的数据表 导出数据库结构 导出数据库中表的表结构 导出多个数据库 导出所有数据库 数据库的导入 数据库的导出 mysqldump -h IP地址 -P 端口 -u 用户名 -p 数据库名 > 导出的文件名 用管理员权限打开cmd进入MySQL的bi…

Java StringBuffer和StringBuilder类

由于String的不可更改特性&#xff0c;为了方便字符串的修改&#xff0c;Java中又提供StringBuilder和StringBuffer类。与String不同的是&#xff0c;StringBuffer和StringBuilder是对字符串本身进行修改&#xff0c;并且不产生新的对象&#xff0c;而String是产生新的字符串进…

中科亿海微浮点数转换定点数

引言 浮点数转换定点数是一种常见的数值转换技术&#xff0c;用于将浮点数表示转换为定点数表示。浮点数表示采用指数和尾数的形式&#xff0c;可以表示较大范围的数值&#xff0c;但存在精度有限的问题。而定点数表示则采用固定小数点位置的形式&#xff0c;具有固定的精度和范…

win10安装mysql和c++读取调用举例

一、下载mysql8.rar解压到C盘(也可以解压到其他位置) 在系统环境变量添加JAVA_HOMEC:\myslq8&#xff0c;并在path中添加%JAVA_HOME%\bin; 二、以管理员身份进入命令窗口 三、修改配置文件指定安装路径和数据库的存放路径 四、键入如下命令初始化并启动mysql服务,然后修改登录…

Linux下grep通配容易混淆的地方

先上一张图: 我希望找到某个版本为8的一个libXXX.8XXX.so ,那么应该怎么写呢? 先看这种写法对不对: 是不是结果出乎你的意料之外? 那么我们来看一下规则: 这里的 "*" 表示匹配前一个字符的零个或多个 于是我们就不难理解了: lib*8*.so 表示 包…

一篇文章搞懂如何使用JDBC操作数据库,还有JDBC进阶操作

目录 简介什么是JDBC如何使用JDBC1、获取连接2、操作数据3、关闭连接&#xff0c;释放资源使用技巧 查询操作创建表&#xff0c;插入模拟数据使用Java查询数据的数据SQL注入问题使用PreparedStatement查询 更新操作插入插入并获取主键更新删除 JDBC事务JDBC的批量操作JDBC连接池…

微服务与Nacos概述-5

引入OpenFeign 添加依赖&#xff1a; <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency><groupId>com.alibaba.cloud</groupId>…

【Linux】CentOS7.3环境下安装Mysql 8.0.30

CentOS7.3环境下安装Mysql 8.0.30 1.mysql官网下载安装包 下载地址&#xff1a;https://downloads.mysql.com/archives/community/ 2.上传安装包到linux服务器并解压 tar -vxf mysql-8.0.30-linux-glibc2.12-x86_64.tar.xz修改名称 mv mysql-8.0.30-linux-glibc2.12-x86_6…

中心极限定理例题

关于大数定律的两个题目。 例1 注意牢记公式&#xff1a; P { X } P { ∑ i 1 n x i − n μ n σ < x } ∫ − ∞ x e − x 2 2 d x 2 π P\{ X\} P \{\frac { \sum_{i1}^{n} x_i - n \mu}{\sqrt {n} \sigma} < x \} \frac {\int _{-\infty} ^{x} e ^{- \frac {x^…

keil下载程序具体过程3:从jlink的log开始

引言 本篇文章开始&#xff0c;跟着jlink的log&#xff0c;我们将跟踪镜像文件具体的下载过程。 一、jlink的log 下面的是keil点击Download按钮输出的log。 FromELF: creating hex file... ".\Objects\Project.axf" - 0 Error(s), 0 Warning(s). Build Time Elapsed…

C++ 语言的输入与输出

C 标准 I/O 库包含 iostream、fstream 和 sstringstream。iostream、fstream 比较常用&#xff0c;一般操作于输入和输出&#xff0c;相较于前两者来说 sstringstream 的出现频率就低了许多&#xff0c;一般操作于数据的格式化。为了能更好的理解 C 语言的标准 I/O 库&#xff…

通过MATLAB自动产生Hamming编译码的verilog实现,包含testbench

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 1. 原理 1.1 编码规则 1.2 错误检测和纠正 2. 实现过程 2.1 编码过程 2.2 解码过程 3. 应用领域 3.1 数字通信 3.2 存储系统 3.3 ECC内存 3.4 数据传输 5.算法完整程序工程 1.算法…

MySQL多表关联查询

目录 1. inner join&#xff1a; 2. left join&#xff1a; 3. right join&#xff1a; 4.自连接 5.交叉连接&#xff1a; 6、联合查询 7、子查询 1. inner join&#xff1a; 代表选择的是两个表的交差部分。 内连接就是表间的主键与外键相连&#xff0c;只取得键值一致…

全国各地区数字经济工具变量-文本词频统计(2002-2023年)

数据简介&#xff1a;本数据使用全国各省工作报告&#xff0c;对其中数字经济相关的词汇进行词频统计&#xff0c;从而构建数字经济相关的工具变量。凭借数字经济政策供给与数字经济发展水平的相关系数的显著性作为二者匹配程度的划分依据&#xff0c;一定程度上规避了数字经济…

Vue.js2+Cesium1.103.0 九、淹没分析效果

Vue.js2Cesium1.103.0 九、淹没分析效果 Demo <template><divid"cesium-container"style"width: 100%; height: 100%;"><spanid"button"style"position: absolute; right: 50px; top: 50px; z-index: 999; font-size: 24px…

旅卦-火山旅

前言&#xff1a;人生就像一趟旅行&#xff0c;为谋生奔波也是旅&#xff0c;旅是人生的常态&#xff0c;我们看一下易经里的旅卦&#xff0c;分析下卦辞和爻辞以及自己的理解。 目录 卦辞 爻辞 总结 卦辞 旅&#xff1a;小亨&#xff0c;旅贞吉。 卦序&#xff1a;穷大者…