vue3项目构建流程

news/2025/3/1 0:23:34/文章来源:https://www.cnblogs.com/sisxxw/p/18151825

1.项目包管理工具选择pnpm

npm i -g pnpm

2.选择用vite管理项目

注意node的版本需要16+,项目才能正常使用,在cmd中输入pnpm create vite命令,按照指示创建初始项目

3.下载eslint项目代码校验

执行pnpm i eslint -D安装eslint依赖,然后执行命令npx eslint --init生成配置文件.eslint.cjs或者eslint.config.js之后在rules配置中自定义校验规则

4.安装配置prettier用于保证代码美观

运行命令pnpm install -D eslint-plugin-prettier prettier eslint-config-prettier下载相关依赖,创建.prettierrc.json文件配置相关规则,创建.prettierignore用于配置不需要校验的文件

5.统一包管理工具

这里强制使用pnpm,在项目根目录创建scritps/preinstall.js文件,添加下面的内容
``

点击查看代码
if(!/pnpm/.test(process.env.npm_execpath || '')){console.warn(`\u001b[33mThis repository must using pnpm as the package manager ` + ` for scripts to work properly.\u001b[39m\n`,)process.exit(1)
}

之后在packages.json中添加新的执行命令 "preinstall": "node ./scripts/preinstall.js"

6.element-plus集成

运行命令pnpm i element-plus安装相关依赖,之后在main.ts文件中引入依赖 ,参考如下代码:

点击查看代码
import { createApp } from 'vue';
import './style.css';
import App from './App.vue';
import ElementPlus from "element-plus";
import 'element-plus/dist/index.css';const app = createApp(App);app.use(ElementPlus)
app.mount('#app')
之后就可以在整个项目中正常使用了

7.配置src文件夹别名

在开发项目的过程中文件与文件的关系可能很复杂,因此给src文件夹配置一个别名很有必要。在vite.config.ts文件中进行如下配置:

点击查看代码
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import path from "path"// https://vitejs.dev/config/
export default defineConfig({plugins: [vue()],resolve: {alias:{"@":path.resolve("./src") //相对路径别名配置,使用@代替src的相对路径}}
})
之后在tsconfig.json文件中进行如下配置:
点击查看代码
{"compilerOptions":{"baseUrl":"./", //解析非相对模块的基地址,默认是当前目录"path":{		//路径映射,相对于baseUrl"@/*":["src/*"]}}
}

8.项目环境变量配置

创建环境变量文件,我这里举例三个:
image
分别是开发环境,测试环境和生产环境。之后在生产环境中进行自己需要的配置例如:

点击查看代码
NODE_ENV = 'production'
VITE_APP_BASE_API = '/pro-api'
VITE_SERVE = 'http://xxxx.com'
这里要注意变量必须以VITE_为前缀,这样才能暴露出去被外部读取。之后必须在package.json文件中添加几个打包名命令才能按需进行打包:
点击查看代码
"build:dev": "vue-tsc && vite build --mode development",
"build:test": "vue-tsc && vite build --mode test",
"build:pro": "vue-tsc && vite build --mode production",
使用时可以通过import.meta.env来获取环境变量

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

APS计划排产在金属制管行业的应用及效益提升分析

金属管材是众多工业产品、基础设施建设的基础材料,其所属的金属制管行业通过自身技术创新、质量管控,带动整个制造业的进步。金属制管行业是典型的离散行业特征,具有多品种、小批量、非标定制的生产特性,其工艺复杂和多样性给从事计划生产的人员带来了巨大的挑战。今天我们…

软件开发项目管理(从立项到上线的全流程解析)

软件开发项目管理(从立项到上线的全流程解析)图1 传统软件开发流程研发项目流程是组织研发活动的重要方式,可以帮助企业高效地开展研发工作,实现研发成果的快速转化。本文将介绍研发项目流程的八个阶段,包括规划阶段、需求分析阶段、设计阶段、编码阶段、测试阶段、部署阶…

JavaWeb-1 动态网页开发

1.新建动态网页项目 2.新建类作者:太一吾鱼水 宣言:在此记录自己学习过程中的心得体会,同时积累经验,不断提高自己! 声明:博客写的比较乱,主要是自己看的。如果能对别人有帮助当然更好,不喜勿喷! 文章未经说明均属原创,学习笔记可能有大段的引用,一…

如何在易优CMS中调试新模板?

在易优CMS中调试新模板是一项重要的任务,以确保新模板能够正常工作并且不会影响网站的其他功能。以下是一些详细的步骤和建议,帮助你在易优CMS中调试新模板:备份现有数据:在开始调试之前,务必备份现有的数据库和文件。这样即使在调试过程中出现问题,也可以快速恢复到原来…

如何在易优CMS中创建分页加载文件 formreply_block001.htm?

在易优CMS中,为了实现分页加载功能,需要创建一个分页加载文件 formreply_block001.htm。以下是详细的步骤和说明:创建文件:在模板目录 pc/system 或 mobile/system 下创建一个名为 formreply_block001.htm 的文件。具体路径如下:PC端:模板目录/pc/system/formreply_block…

在PbootCMS中如何处理不同Web服务器的文件上传大小限制?

在PbootCMS中,处理不同Web服务器的文件上传大小限制需要针对每种Web服务器进行特定的配置。以下是针对IIS、Nginx和Apache三种常见Web服务器的详细配置方法:IIS:打开IIS管理器:打开IIS管理器,选择要修改的网站。 请求筛选:在右侧操作栏中,点击“请求筛选”。 编辑功能设…

怎么修改公司网站的内容,如何高效更新网站内容

修改公司网站的内容是一个常见的维护任务,需要确保内容的准确性和时效性。以下是详细的步骤和注意事项:确定修改内容:明确需要修改的具体内容,如文字、图片、视频等。 备份网站:在进行任何修改之前,务必备份当前的网站文件和数据库,以防数据丢失或出现问题时可以恢复。 …

高通Genitop点阵字库芯片GT20L16S1Y、

序号 工作电压 点阵数大小 点阵 字库特征 总线接口 封装 3.3V 5V 8 12 16 24 32 排列 1 GT20L16S1Y ☆ Y 简体 SPI SOT-23 2 GT20L24F6Y ● ◎ ● ◎ Y 173国外文 SPI SOT-23 3 GT20L16J1Y ◆ Y 日文 SPI SOT-23 4 GT20L16P1Y ☆ Y MP3专用 SPI SOT-2…

盘点最受企业青睐的跨网文件安全交换系统!

一、为什么传统跨网工具难以满足现代企业需求? 传统跨网文件交换工具(如U盘、FTP、网闸等)在现代企业需求面前显得力不从心,尤其是在安全性、效率、合规性和灵活性等方面存在明显短板。 1、安全性不足 传统跨网工具(如普通FTP、USB拷贝)通常采用明文传输或未加密存储,容…

二阶魔方教程

二阶色先教程色先法整个分为3步:1、色向归位 Corner Orientation (CO) 2、顶层分离 Layer Separation (LS)3、各角归位Corner Permutation (CP) 一、色向分离 CO色向分离的意思是指把两个对顶面的色向复原,比如用红色和橙色做上下顶面,色向分离就是指把红色和橙色归到上下两…

pyqt5 串口serial用法

测试将TX,RX短接。 串口打开发送,接受、关闭点击查看代码 import serial ser = serial.Serial(com15,9600,timeout=1) ser.write(bhello) data=ser.readline() print(data) ser.close()

【一文概述】常见的几种内外网数据交换方案介绍

一、内外网数据交换的核心需求 内外网数据交换的需求核心在于“安全、效率、合规”,而应用场景的多样性使得不同企业需要定制化的解决方案。通过结合业务特性和安全等级要求,企业能够选择适合的技术方案来实现高效、安全的内外网数据交换。1、数据安全 确保数据在内外网之间交…