当前位置: 首页 > news >正文

【Vue3】工程创建及目录说明

【Vue3】工程创建及目录说明

  • 背景
  • 简介
  • 开发环境
  • 开发步骤及源码

背景

随着年龄的增长,很多曾经烂熟于心的技术原理已被岁月摩擦得愈发模糊起来,技术出身的人总是很难放下一些执念,遂将这些知识整理成文,以纪念曾经努力学习奋斗的日子。本文内容并非完全原创,大多是参考其他文章资料整理所得,感谢每位技术人的开源精神。

简介

本文介绍如何创建 Vue3 前端工程,并对自动创建的工程目录做个简单说明。

开发环境

分类名称版本
操作系统WindowsWindows 11
IDEVisual Studio Code1.91.1

开发步骤及源码

1> 安装 Node.js,本文使用的版本是 v20.15.1

C:\...>node -v
v20.15.1

2> 升级 npm。

C:\...>npm -v
10.7.0C:\...>npm install -g npmadded 1 package in 15s22 packages are looking for fundingrun `npm fund` for detailsC:\...>npm -v
10.8.2

3> 配置 NPM 国内镜像源。

C:\...> npm installadded 62 packages, and audited 63 packages in 7m7 packages are looking for fundingrun `npm fund` for detailsfound 0 vulnerabilities

4> 打开 Visual Studio Code,安装 Vue 官方插件。
Visual Studio Code Vue 官方插件

5> 创建 Vue3 工程。

PS D:\temp\VUE> npm create vue@latest
Need to install the following packages:
create-vue@3.10.4
Ok to proceed? (y) y> npx
> create-vueVue.js - The Progressive JavaScript Framework√ Project name: ... vue3-demo
√ Add TypeScript? ... No / Yes
√ Add JSX Support? ... No / Yes
√ Add Vue Router for Single Page Application development? ... No / Yes
√ Add Pinia for state management? ... No / Yes
√ Add Vitest for Unit Testing? ... No / Yes
√ Add an End-to-End Testing Solution? » No
√ Add ESLint for code quality? ... No / Yes
√ Add Vue DevTools 7 extension for debugging? (experimental) ... No / YesScaffolding project in D:\temp\VUE\vue3-demo...Done. Now run:cd vue3-demonpm installnpm run dev

创建过程首先提示安装 create-vue 包,然后填写工程名并配置各项工程依赖,此处只配置了 TypeScript。

6> 进入新创建工程的根目录,执行 npm install 命令安装工程依赖。

PS D:\temp\VUE> cd vue3-demo
PS D:\temp\VUE\vue3-demo> npm install

7> 执行 npm run dev 启动工程。

PS D:\temp\VUE\vue3-demo> npm run dev> vue3-demo@0.0.0 dev
> viteVITE v5.3.4  ready in 1772 ms➜  Local:   http://localhost:5173/➜  Network: use --host to expose➜  press h + enter to show help

8> 浏览器访问 http://localhost:5173/
Vue3

9> 已创建好的工程目录说明。
Vue3工程目录
说明:

  • .vscode:此目录下只有一个文件 extensions.json,是 Visual Studio Code 插件配置,之前已安装 Vue 官方插件,所以文件内容如下:
    {"recommendations": ["Vue.volar"]
    }
    
  • node_modules:存放工程依赖包,在执行 npm install 命令后才会有此文件夹。
  • public:脚手架根目录,默认只有一个页签图片文件 favicon.ico
  • src:源代码目录,开发工作基本都集中在此目录中。
  • src/assets:存放工程静态资源文件。
  • src/components:存放 Vue 组件。
  • src/App.vue:Vue 根组件,其他所有 Vue 组件都是其子组件。
  • src/main.ts:应用入口文件,负责初始化 Vue 应用并将其挂载到 DOM 上。
  • .gitignore:Git 配置文件,用于配置哪些文件/文件夹不需要提交到代码仓。
  • env.d.ts:类型声明文件(declaration file),把 node_modulesvite 文件夹下 client 客户端类型声明文件导入到这个文件里,此文件无需修改,也不能删除。
  • index.html:Vite 入口文件,与 webpack 不同,webpack 的入口文件是 main.ts / main.js
  • package-lock.json:锁定安装时的包的版本号,需要上传 Git 以保证其他人在执行 npm install 时大家的工程依赖保证一致。
  • package.json:定义项目依赖与配置。
  • README.md:工程描述文件。
  • tsconfig.app.json:TypeScript 配置文件,为前端 Vue 应用提供了一套合理的默认 TypeScript 编译设置,通过继承、文件包含或排除规则和编译器选项来优化开发和构建过程。保持默认生成不要修改。
  • tsconfig.json:TypeScript 项目核心配置文件,提供了对 TypeScript 编译器的全局设置,并决定了如何编译 TypeScript 源代码。保持默认生成不要修改。
  • tsconfig.node.json:TypeScript 配置文件,专门用于配置 TypeScript 在 Node.js 环境下的行为。保持默认生成不要修改。
  • vite.config.ts:Vite 项目配置文件,用来配置构建选项和插件。

相关文章:

【Vue3】工程创建及目录说明

【Vue3】工程创建及目录说明 背景简介开发环境开发步骤及源码 背景 随着年龄的增长,很多曾经烂熟于心的技术原理已被岁月摩擦得愈发模糊起来,技术出身的人总是很难放下一些执念,遂将这些知识整理成文,以纪念曾经努力学习奋斗的日…...

算法学习2——排序算法(2)

上一篇介绍了几种常见且使用较多的排序算法,本章主要是一个进阶内容,介绍三个较为复杂的算法。 计数排序 (Counting Sort) 计数排序是一种适用于范围较小的整数序列的排序算法。它通过统计每个元素的出现次数,然后依次输出元素,…...

嵌入式人工智能(9-基于树莓派4B的PWM-LED呼吸灯)

1、PWM简介 (1)、什么是PWM 脉冲宽度调制(PWM),是英文“Pulse Width Modulation”的缩写,简称脉宽调制,是在具有惯性的系统中利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在从测量、通信到功率控制…...

python-NLP:1中文分词

文章目录 规则分词正向最大匹配法逆向最大匹配法双向最大匹配法 统计分词语言模型HMM模型 jieba分词分词关键词提取词性标注 规则分词 基于规则的分词是一种机械分词方法,主要是通过维护词典,在切分语句时,将语句的每个字符串与词表中的词进行…...

iOS 开发包管理之CocoaPods

CocoaPods(Objective-C 时期,支持Objective-C和swift),CocoaPods下载第三方库源代码后会将其编译成静态库.a 文件 或动态库框架.framework 文件 的形式,并将它们添加到项目中,建立依赖关系,这种…...

Windows搭建RTMP视频流服务器

参考了一篇文章,见文末。 博客中nginx下载地址失效,附上一个有效的地址: Index of /download/ 另外,在搭建过程中,遇到的问题总结如下: 1 两个压缩包下载解压并重命名后,需要 将nginx-rtmp…...

VS2019安装MFC组件

VS2019支持的MFC版本是mfc140 ~ mfc142版本,它兼容VS2015、VS2017之前的老版本程序。 一、MFC的历史版本 MFC的历史版本如下: IDE发布时间工具集版本MSC_VERMSVCMFC版本dllVisual C6.01998V601200MSVC6.06.0mfc42.dll、mfcce400.dllVisual Studio 2002…...

Python学习—open函数,json与pickle知识点,Os模块详解

目录 1. Open函数 2.json与pickle模块 json模块 1. json.dumps() 2. json.dump() 3. json.loads() 4. json.load() pickle 模块 1. pickle.dumps() 2. pickle.dump() 3. pickle.loads() 4. pickle.load() 3.Os模块 1. Open函数 在Python中,open() 函数…...

基于SSM的高考志愿选择辅助系统

基于SSM的高考志愿选择辅助系统的设计与实现~ 开发语言:Java数据库:MySQL技术:SpringSpringMVCMyBatis工具:IDEA/Ecilpse、Navicat、Maven 系统展示 前台 前台首页 院校展示 后台 后台首页 学校管理 摘要 随着高考制度的不断完…...

引领小模型潮流!OpenAI发布功能强大且成本低的GPT-4o mini

GPT-4o mini的成本比GPT-3.5 Turbo低了超过60%,其聊天表现优于Google的Gemini Flash和Anthropic的Claude Haiku。该模型从周四开始对ChatGPT的免费用户、ChatGPT Plus用户和团队订阅用户开放,并将在下周向企业用户开放。OpenAI计划未来将图像、视频和音频…...

【考研数学】线代满分经验分享+备考复盘

我一战二战复习都听了李永乐的线代课,二战的时候只听了一遍强化,个人感觉没有很乱,永乐大帝的课逻辑还是很清晰的。 以下是我听向量这一章后根据听课内容和讲义例题总结的部分思维导图,永乐大帝讲课的时候也会特意点到线代前后联…...

Java项目:基于SSM框架实现的海鲜自助餐厅系统【ssm+B/S架构+源码+数据库+毕业论文】

一、项目简介 本项目是一套基于SSM框架实现的海鲜自助餐厅系统 包含:项目源码、数据库脚本等,该项目附带全部源码可作为毕设使用。 项目都经过严格调试,eclipse或者idea 确保可以运行! 该系统功能完善、界面美观、操作简单、功能…...

前端面试题日常练-day97 【Less】

题目 希望这些选择题能够帮助您进行前端面试的准备,答案在文末 在Less中,以下哪个功能用于处理文本字间距? a) letter-spacing() b) word-spacing() c) text-spacing() d) space-between() Less中的Variables可以存储哪些类型的值&#xff…...

压缩视频大小的方法 怎么减少视频内存大小 几个简单方法

随着4K、8K高清视频的流行,我们越来越容易遇到视频文件体积过大,导致存储空间不足、传输速度缓慢等问题。视频压缩成为解决这一问题的有效途径,但如何在减小文件大小的同时,保证视频质量不受影响呢?本文将为你揭晓答案…...

JVM:GraalVM

文章目录 一、介绍1、什么是GraalVM:2、GraalVM版本 二、两种使用模式 一、介绍 1、什么是GraalVM: GraalVM是Oracle官方推出的一款高性能JDK,使用它享受比OpenJDK或者OracleJDK更好的性能。GraalVM的官网地址:https://www.graa…...

海外营销推广:快速创建维基百科(wiki)词条-大舍传媒

一、维基百科的永久留存问题 许多企业和个人关心维基百科是否能永久留存。实际上,只要企业和个人的行为没有引起维基百科管理方的反感,词条就可以长期保存。如果有恶意行为或被投诉,维基百科可能会对词条进行删除或修改。 二、创建维基百科…...

【HarmonyOS】HarmonyOS NEXT学习日记:五、交互与状态管理

【HarmonyOS】HarmonyOS NEXT学习日记:五、交互与状态管理 在之前我们已经学习了页面布局相关的知识,绘制静态页面已经问题不大。那么今天来学习一下如何让页面动起来、并且结合所学完成一个代码实例。 交互 如果是为移动端开发应用,那么交…...

处理uniapp刷新后,点击返回按钮跳转到登录页的问题

在使用uniapp的原生返回的按钮时,如果没有刷新会正常返回到对应的页面,如果刷新后会在当前页反复横跳,或者跳转到登录页。那个时候我第一个想法时:使用浏览器的history.back()方法。因为浏览器刷新后还是可以通过右上角的返回按钮…...

工厂方法模式java

文章目录 1. 概念2. 示例3. 代码示例 1. 概念 定义: 工厂方法模式又叫工厂模式,通过定义工厂父类创建对象的公共接口,而子类负责创建具体的对象 作用: 由工厂的子类来决定创建哪一个对象 缺点: 工厂一旦需要生成新的东西就需要修改代码,违背的开放封闭原则 2. 示例 3. 代码示…...

java模拟多ip请求【搬代码】

java模拟多ip请求 package url_demo;import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintWriter; import java.net.URL; import java.net.URLConnection; import java.util.Random;public class HttpUtilTest…...

微软史诗级的蓝屏

本周经历了微软的蓝屏,一直到周末还在加班处理公司的问题。 个人终端受到的影响较大,服务器上也受到了影响。因为蓝屏的事情导致不少麻烦,据同事说因为蓝屏的问题,MGH 的手术安排也受到了影响。 目前我们也在着手处理有部署 Wind…...

HALCON数据结构

一、HALCON数据结构简介 1、HALCON中有两类参数:图形参数和控制参数。 2、HALCON算子参数中,图形输入参数、图形输出参数、控制输入参数和控制输出参数。 3、图形参数有:图像(image)、区域(region)和轮廓(XLD) 4、控制参数有:…...

数据库系统概论:事务与并发一致性问题

随着网络应用的普及,数据库并发问题变得越来越重要。数据库并发指的是多个用户或进程同时访问和操作数据库的能力。它是数据库系统性能优化的重要方面,旨在提高系统的吞吐量和响应时间,以满足多用户同时访问数据库的需求。然而,这…...

Python编程基础:元组类型、字典类型、集合类型

目录 元组类型创建/删除元组访问/操作元组元组生成式字典类型创建/删除字典访问/操作字典字典相关函数集合类型创建/删除集合集合相关操作符访问/操作集合元组类型 元组是Python中内置的不可变序列,这是它跟列表的不同之处,它没有一系列增删改等操作,只可以使用索引和for循环…...

day2 单机并发缓存

文章目录 1 sync.Mutex2 支持并发读写3 主体结构 Group3.1 回调 Getter3.2 Group 的定义3.3 Group 的 Get 方法 4 测试 本文代码地址: https://gitee.com/lymgoforIT/gee-cache/tree/master/day2-single-node 本文是7天用Go从零实现分布式缓存GeeCache的第二篇。 …...

ECMP等价多路由机制,大模型训练负载均衡流量极化冲突原因,万卡(大规模)集群语言模型(LLM)训练流量拥塞特点

大规模集群,大语言模型(LLM)训练流量特点,ECMP(Equal-Cost Multi-Path Routing)流量极化拥塞原因。 视频分享在这: 2.1 ECMP等价多路由,大模型训练流量特点,拥塞冲突极化产生原因_哔哩哔哩_bi…...

Linux 注意事项

Linux 与 Windows 是两个相互独立的操作系统,两者有较大差距: 1.1 Linux 严格区分大小写(Windows不严格区分大小写); 1.2 Linux 中所有内容,硬件设备都以文件形式保存在 /dev 目录下(万物皆文件…...

力扣SQL50 指定日期的产品价格 双重子查询 coalesce

Problem: 1164. 指定日期的产品价格 coalesce 的使用 简洁版 &#x1f468;‍&#x1f3eb; 参考题解 select distinct p1.product_id,coalesce((select p2.new_pricefrom Products p2where p2.product_id p1.product_id and p2.change_date < 2019-08-16order by p2.…...

MySQL8的备份方案——全量(完全)备份(CentOS)

MySQL8的全量备份 一、安装备份工具二、备份数据三、恢复备份 点击跳转增量备份 点击跳转差异备份 点击跳转压缩备份 一、安装备份工具 官网 下载地址 备份所用工具为percona-xtrabackup 如果下方安装工具的教程失效&#xff0c;请点击上方下载地址转到官方文档查看 下载该工…...

JVM监控及诊断工具-命令行篇--jcmd命令介绍

JVM监控及诊断工具-命令行篇5-jcmd&#xff1a;多功能命令行 一 基本情况二 基本语法jcmd -ljcmd pid helpjcmd pid 具体命令 一 基本情况 在JDK 1.7以后&#xff0c;新增了一个命令行工具jcmd。它是一个多功能的工具&#xff0c;可以用来实现前面除了jstat之外所有命令的功能…...

长春市做网站哪家好/贵港seo

ORM的单表操作 MTV框架包含一个重要的部分就是ORM————对象关系映射&#xff08;Object Relational Mapping&#xff09;&#xff0c;它实现了数据模型与数据库的解耦&#xff0c;即数据模型的设计。利用它我们不需要依赖于特定的数据库&#xff0c;通过简单的配置就可以轻松…...

手机企业网站建设/网络销售

数据泄露事件近年来不断上升&#xff0c;而这些数据泄露原因大部分都是因为网站安全防护不到位而导致的。为了保护用户的信息安全&#xff0c;各大网络平台应该要提升安全防护&#xff0c;尤其是需要与用户进行信息交换的平台&#xff0c;更需要加强网站的安全防护。 企业如何…...

上海专业网站建设/中国疫情最新数据

1. 问题引入——频率的稳定值记为概率&#xff0c;这里的“稳定”是何含义&#xff1f; 2. 依概率收敛的定义 3. 依概率收敛示例 4. 依概率收敛的性质 5. 切比雪夫不等式&#xff08;定理&#xff09;及其证明 6. 切比雪夫不等式的适用范围 7. 切比雪夫不等式的应用示例...

国外做vj的网站/永州网络推广

前言&#xff1a; 视觉小车最重要的是视觉功能&#xff0c;其实现方式主要有&#xff1a; Opencv外置计算机摄像头。需要计算机作为上位机。Stm32OV7670。较难&#xff0c;大师级。OpenMV摄像头。较简单&#xff0c;入门级。 博主刚开始为了准备项目&#xff0c;了解尝试过前…...

在阿里巴巴做网站多少钱2019/企业网站首页

通常我们定义一个基本数据类型的变量&#xff0c;函数调用的现场保存&#xff0c;一个对象的引用&#xff0c;都使用JVM中的栈空间&#xff1b; 通过new关键字和构造器创建的对象放在堆空间&#xff0c;堆是垃圾收集器管理的主要区域&#xff0c;由于现在的垃圾收集器都采用分…...

微信小程序开发实例教程/seo公司网站推广

In the given example, we are printing the messages by using different forms of the print() method in Python. 在给定的示例中&#xff0c;我们通过使用Python中不同形式的print()方法来打印消息。 Consider the program: 考虑该程序&#xff1a; # it will print new …...