基于vite创建一个脚手架(快速入门)

Vite是一种新型的前端构建工具,主要用于构建现代化的Web应用程序。以 原生ESM 方式提供源码。这实际上是让浏览器接管了打包程序的部分工作:Vite 只需要在浏览器请求源码时进行转换并按需提供源码。根据情景动态导入代码,即只在当前屏幕上实际使用时才会被处理。

一、Node.js下载与安装

1、打开Node,js官网(https://nodejs.org),点击下载按钮,一般下载后npm会自动安装,若npm没有自动安装,则手动到官网(https://www.npmjs.com)下载。

Node.js 是一个开源的、跨平台的 JavaScript 运行环境(本质是Chrome引擎的封装),允许开发者使用 JavaScript 来编写服务器端代码
npm(Node Package Manager)是 Node.js 包管理器, 用来安装各种库、框架和工具

 下载后打开安装包一直点next即可。下载完成后可在终端输入node -v查看Node.js版本,npm -v查NPM(Node包管理器)版本,确保安装成功且知晓版本信息。

 二、镜像源的修改

利用npm get registry可在终端查看当前镜像源,默认镜像源是国外网址,国内访问经常失败,所以可以设置淘宝镜像源(npm config set registry https://registry.npmmirror.com/)。

这样则下载好了Node.js和npm,但我们在后续写脚手架选择了pnpm

npm与pnpm的区别

 

1、npm和pnpm都是JavaScript的包管理工具

2、npm是Node.js的默认包管理器,它的工作方式比较直接。当安装一个包时,会在项目的node_modules文件夹下嵌套地复制每个依赖包,这可能导致相同版本的包被重复安装占用较多磁盘空间。比如,项目依赖A和B,A和B又都依赖相同版本的C,那么C会在node_modules下有两份。

3、pnpm则采用了一种更节省空间的方式。它通过硬链接和符号链接来存储依赖包,所有相同版本的包在磁盘上只会存储一份。并且它在安装速度上可能更快,这是因为避免了大量重复的文件操作。例如,同样是A和B依赖相同版本C的情况,pnpm只会在一个地方存储C,然后通过链接的方式让A和B都能使用。

 三、基于pnpm和vite创建Vue3项目

1、安装pnpm工具包

选择想要存放脚手架的文件夹,打开终端(在路径处输入“cmd”打开终端)

执行 npm install -g pnpm下载pnpm工具包

2、创建脚手架:pnpm create vue 

3、修改项目名称,这里我选择默认项目名称(vue-project) 

4、配置脚手架相关插件

 5、执行以下指令

  • cd vue-project
  • pnpm install
  • pnpm format
  • pnpm dev

执行后复制“http://localhost:5173/”,打开网站

这样就创建好了一个脚手架!

通过visual Studio Code软件打开刚刚创建的文件夹。

在这个脚手架中有许多的文件,以下标红的均为重点(部分文件未写出来) 

 

在这些文件夹中,src是主要的开发目录

其中assets一般用于存放图片;components用于存放组件, 在components文件夹下面,以.vue文件形式存在,而这些组件用于构建用户界面;style.css一般用于存放样式,用于定义项目的外观等。

大家可以根据这些步骤创建一个脚手架,后续也会讲解如何创建一个属于自己的脚手架

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

学习ASP.NET Core的身份认证(基于Session的身份认证1)

ASP.NET Core使用Session也可以实现身份认证,关于Session的介绍请见参考文献5。基于Session的身份认证大致原理就是用户验证成功后将用户信息保存到Session中,然后在其它控制器中从Session中获取用户信息,用户退出时清空Session数据。百度基于…

视觉语言模型(VLM)学习笔记

目录 应用场景举例 VLM 的总体架构包括: 深度解析:图像编码器的实现 图像编码器:视觉 Transformer 注意力机制 视觉-语言投影器 综合实现 训练及注意事项 总结 应用场景举例 基于文本的图像生成或编辑:你输入 “生成一张…

spider--某站搜索--自动化dp

免责声明:本文仅作分享! 自动化: DrissionPage DrissionPage官网 import time from DrissionPage import ChromiumPage,ChromiumOptions import pandas as pd# 这里配置了浏览器路径,不配置的话直接 page ChromiumPage() co Ch…

学成在线day07

视频处理 技术方案 掌握了xxl-job的分片广播调度方式,下边思考如何分布式去执行学成在线平台中的视频处理任务。 任务添加成功后,对于要处理的任务会添加到待处理任务表中,现在启动多个执行器实例去查询这些待处理任务,此时如何…

vsftpd 的安装和应用(超详细!!!)

FTP(File Transfer Protocol,文件传输协议)是一种用于在计算机网络上进行文件传输的标准协议。它允许用户从一台计算机向另一台计算机上传或下载文件。FTP的工作原理涉及到客户端和服务器之间的交互,以及数据传输的过程。 一、FT…

学习笔记:黑马程序员JavaWeb开发教程(2024.11.29)

10.5 案例-部门管理-新增 如何接收来自前端的数据: 接收到json数据之后,利用RequestBody注解,将前端响应回来的json格式的数据封装到实体类中 对代码中Controller层的优化 发现路径中都有/depts,可以将每个方法对应请求路径中的…

基于Java的小程序电商商城开源设计源码

近年来电商模式的发展越来越成熟,基于 Java 开发的小程序电商商城开源源码,为众多开发者和企业提供了构建个性化电商平台的有力工具。 基于Java的电子商城购物平台小程序的设计在手机上运行,可以实现管理员;首页、个人中心、用户…

JiaJia-CP-1,2,3的WP(1)

一.JiaJia-CP-1 这是ctfshow里电子取证里面的题,以下下是我做题时的WP 审题,最后提交格式要进行md5 加密,给各位CTFer们找了一个md5加密的网站(加紧收藏哦): MD5 在线加密工具 | 菜鸟工具 1.拿到题目&am…

微信小程序下拉刷新与上拉触底的全面教程

微信小程序下拉刷新与上拉触底的全面教程 引言 在微信小程序的开发中,用户体验至关重要。下拉刷新和上拉触底是提高用户交互体验的重要功能,能够让用户轻松获取最新数据和内容。本文将详细介绍这两个功能的实现方式,结合实际案例、代码示例和图片展示,帮助开发者轻松掌握…

Vision Transformer(vit)的主干

图解: 代码: class VisionTransformer(nn.Module):def __init__(self, img_size224, patch_size16, in_c3, num_classes1000,embed_dim768, depth12, num_heads12, mlp_ratio4.0, qkv_biasTrue,qk_scaleNone, representation_sizeNone, distilledFalse,…

无人机的起降装置:探索起飞和降落的秘密 !

一、起降系统的运行方式 起飞方式 垂直起飞:小型无人机通常采用垂直起飞方式,利用螺旋桨产生的升力直接从地面升起。这种方式适用于空间有限或需要快速起飞的场景。 跑道起飞:大型无人机或需要较长起飞距离的无人机,可能会采用…

【VUE3】npm : 无法加载文件 D:\Program\nodejs\node_global\npm.ps1,因为在此系统上禁止运行脚本。

npm : 无法加载文件 D:\Program\nodejs\npm.ps1。未对文件 D:\Program\nodejs\npm.ps1 进行数字签名。无法在当前系统上运行该脚本。有关运行脚本和设置执行策略的详细信息,请参阅 https:/go.microsoft.com/fwlink/?LinkID135170 中的 about_ Execution_Policies。…

跨平台应用开发框架(4)----Qt(系统篇)

目录 1.Qt事件 1.事件来源 2.事件处理 3.按键事件 1.组合按键 4.鼠标事件 1.鼠标单击事件 2.鼠标释放事件 3.鼠标双击事件 4.鼠标移动事件 5.滚轮事件 5.定时器 1.QTimerEvent类 2.QTimer 类 3.获取系统日期及时间 6.事件分发器 7.事件过滤器 2.Qt文件 1.输入…

Mybatis集成篇(一)

Spring 框架集成Mybatis 目前主流Spring框架体系中,可以集成很多第三方框架,方便开发者利用Spring框架机制使用第三方框架的功能。就例如本篇Spring集成Mybatis 简单集成案例: Config配置: Configuration MapperScan(basePack…

【Debug】hexo-github令牌认证 Support for password authentication was removed

title: 【Debug】hexo-github令牌认证 date: 2024-07-19 14:40:54 categories: bug解决日记 description: “Support for password authentication was removed on August 13, 2021.” cover: https://pic.imgdb.cn/item/669b38ebd9c307b7e9f3e5e0.jpg 第一章 第一篇博客记录一…

算法笔记:力扣105从前序与中序遍历序列构造二叉树

首先重要的是要明白前序遍历,和中序遍历的含义; 前序遍历:根左右中序遍历:左根右 那么在前序遍历的数组中,第一位一定是根节点,而中序遍历数组中,根节点的左边部分就是该节点的左子树&#xf…

el-selet下拉菜单自定义内容,下拉内容样式类似表格

<el-form-item label"角色:" prop"username"><el-selectv-model"value"placeholder"Select"popper-class"role_select"><el-option disabled><div class"flex"><div style"width…

数据追踪技术有哪些?如何实现的?

在数字化时代&#xff0c;数据成为了业务决策和市场营销的关键资源。用户行为分析作为数据驱动的一部分&#xff0c;通过数据追踪技术帮助企业了解用户行为、趋势和偏好&#xff0c;从而制定更加精准的战略。本文将深入探讨数据追踪技术在用户行为分析中的神秘面纱&#xff0c;…

2024年信号处理与神经网络应用会

重要信息 会议时间&#xff1a;2024年12月13-15日 会议地点&#xff1a;中国武汉 会议官网&#xff1a;www.spnna.org 会议简介 2024年信号处理与神经网络应用&#xff08;SPNNA 2024&#xff09;将于2024年12月13日至15日在中国武汉召开。在为全球研究人员、工程师、学者和…

C++11-lambda表达式

目录 1.labmda的表达式 1.1.仿函数的使用 1.2lambda表达式的书写 1.3 lambda的捕获列表 1.3.1传值捕捉 1.3.2mutable可以修改拷贝对象 1.3.3 引用捕获 1.3.4混合捕捉 1.4 函数对象与lambda表达式 1.5 lambda和仿函数的比较 &#x1f33c;&#x1f33c;前言&#xff1a;从…