【Vite】快速入门及其配置

news2024/9/23 6:30:28

概述

Vite是前端构建工具。vite

相较于webpack,vite采用了不同的运行方式:

  • 开发时,并不对代码打包,而是直接采用ESM的方式来运行项目
  • 在项目打包部署时,使用 rollup 对项目进行打包
  • 除了速度外,vite使用起来也更加方便

默认项目源码目录就是根目录,而不像 webpack 那样是 src 目录。

我们可以初始化一个工程:

npm init 
npm i vite -D

在这里插入图片描述

<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta
    name="viewport"
    content="width=device-width, initial-scale=1.0"
  >
  <title>Document</title>
  <script
    type="module"
    src=./index.js
  ></script>
</head>

<body>
  <h1>Vite demo</h1>
</body>

</html>
document.body.insertAdjacentHTML('beforeend', '<h1>Hello Vite!</h1>')

然后执行 :

npx vite 

启动项目,并且自动支持热更新和启动服务器。

在这里插入图片描述

npx vite build进行项目打包,且使用 的是 ESM。但是 ESM 必须通过 url的方式进行加载,也就是说,使用打包后的 html 不能运行项目,必须使用 http / https 才可以,所以需要通过服务器打开项目。

但是 live server 也不可以,live server 的根目录配置有问题,默认配置的根目录是项目目录,我们还需要改为 dist 目录。

所以要么通过将 dist 放在服务器运行,要么 执行 npx vite preview 运行。

vite是开发服务器,并不对项目进行打包;而vite preview是打包后的预览服务器。

在这里插入图片描述

配置

一般的 style,css(sass, less 等),图片处理 等一系列常用配置 vite 已经内置了,无需我们手动配置。

要想为传统浏览器提供支持(es6 -> es5),可以按下面这样使用官方插件 @vitejs/plugin-legacy:

$ npm add -D @vitejs/plugin-legacy
// vite.config.js
import legacy from '@vitejs/plugin-legacy'
import { defineConfig } from 'vite'

export default defineConfig({
  plugins: [
    legacy({
      targets: ['defaults', 'not IE 11'],
    }),
  ],
})

legacy 在打包时需要插件 terser(用于压缩代码),所以还需要装:

npm i terser -D 

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

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

相关文章

FPGA-ROM IP核的使用

1.理论 ROM全称&#xff1a;Read-Only Memory&#xff0c;也就是只读型固态半导体存储器&#xff0c;即一旦存储信息&#xff0c;无法再改变&#xff0c;信息也不会因为电源关闭消失。但在FPGA中&#xff0c;实际使用的ROM IP核并不是真正的ROM&#xff0c;其实都是内部的RAM资…

关于企业开展数据资产入表新模式

随着数字化转型持续推进&#xff0c;数据的资产化已成为数字时代不可逆转的趋势。企业数据资产入表已进入倒计时&#xff0c;企业是否科学高效地管理与评估数据&#xff0c;影响着企业是否能够意识到数据应作为资产存在&#xff0c;是否将数据纳入财务报表&#xff0c;并利用数…

【YOLOv5/v7改进系列】引入CoordConv——坐标卷积

一、导言 与标准卷积层相比&#xff0c;CoordConv 的主要区别在于它显式地考虑了位置信息。在标准卷积中&#xff0c;卷积核在输入上滑动时&#xff0c;仅关注局部区域的像素强度&#xff0c;而忽略其绝对位置。CoordConv 通过在输入特征图中添加坐标信息&#xff0c;使得卷积…

探索PyPDF2:Python中的PDF处理大师

探索PyPDF2&#xff1a;Python中的PDF处理大师 1. 背景介绍 在数字化时代&#xff0c;PDF文件因其跨平台的兼容性和内容的稳定性而广受欢迎。然而&#xff0c;处理PDF文件&#xff0c;如合并、分割、提取文本等&#xff0c;往往需要专门的工具。这就是PyPDF2库的用武之地。PyP…

Git报错fatal: detected dubious ownership in repository

报错信息 fatal: detected dubious ownership in repository at 解决办法 一行代码解决 git config --global --add safe.directory "*";如何使用git工具初始胡项目并且和远程仓库建立联系 git init–建立一个本地仓库 git add README.md–将README.md文件加入…

【技术升级】Docker环境下Nacos平滑升级攻略,安全配置一步到位

目前项目当中使用的Nacos版本为2.0.2&#xff0c;该版本可能存在一定的安全风险。软件的安全性是一个持续关注的问题&#xff0c;尤其是对于像Nacos这样的服务发现与配置管理平台&#xff0c;它在微服务架构中扮演着核心角色。随着新版本的发布&#xff0c;开发团队会修复已知的…

代码签名证书的作用

代码签名证书&#xff08;Code Signing Certificate&#xff09;主要用于验证软件的完整性和开发者身份&#xff0c;确保用户在下载或安装软件时能够确认该软件未被篡改&#xff0c;并且确实来自于其所声称的发布者。以下是代码签名证书的主要作用&#xff1a; 验证软件来源&am…

Vue Promise 必须在外层,放到其它比如ElMessageBox,将不会返回任何值

当点击switch按钮之前&#xff0c;如果当更新后再刷新的效果不好&#xff0c;需要判断行为&#xff0c;然后再决定是否打开按钮。 正确如下&#xff1a; return new Promise((resolve,reject) > {ElMessageBox.confirm(Hold?, Warning, {confirmButtonText: Yes,cancelButt…

优秀的Linux Shell终端Starship Shell的安装和配置

文章目录 简介安装startship1.安装 starship 二进制文件:2.将初始化脚本添加到您的 shell 的配置文件3、配置4、日志安装字体nerd-fonts编写脚本安装字体Nerd字体全量安装文档简介 Starship是一款轻量、迅速、可无限定制的高颜值终端! Starship Shell是一个用Rust编写的开源…

虚拟机迁移报错:虚拟机版本与主机“x.x.x.x”的版本不兼容

1.虚拟机在VCenter上从一个ESXi迁移到另一个ESXi上时报错&#xff1a;虚拟机版本与主机“x.x.x.x”的版本不兼容。 2.例如从10.0.128.13的ESXi上迁移到10.0.128.11的ESXi上。点击10.0.128.10上的任意一台虚拟机&#xff0c;查看虚拟机版本。 3.确认要迁移的虚拟机磁盘所在位…

怎么理解FPGA的查找表与CPLD的乘积项

怎么理解 fpga的查找表 与cpld的乘积项 FPGA&#xff08;现场可编程门阵列&#xff09;和CPLD&#xff08;复杂可编程逻辑器件&#xff09;是两种常见的数字逻辑器件&#xff0c;它们在内部架构和工作原理上有着一些显著的区别。理解FPGA的查找表&#xff08;LUT&#xff0c;L…

系统RDSCPU打满问题分析报告

作者&#xff1a;琉璃 1. 问题概述 在2023年9月01日09点13分&#xff0c;玳数运维组侧接收到业务侧反馈系统响应缓慢&#xff0c;与此同时运维群内新系统RDS 发出CPU打满的告警&#xff0c;告警通知如下&#xff1a; 2. 问题分析 a. 数据库会话管理核查 玳数运维组侧登录…

动态规划之三—— 从暴力递归到动态规划_数字字符串转字母字符串

题目&#xff1a; 规定1 和A 对应&#xff0c;2 和B对应&#xff0c;3 和C 对应 ... 那么一个数字字符串&#xff0c;比如“111” 就可以转化为&#xff1a;“AAA” 、“KA”、“AK” 。要求&#xff1a;给定一个只有数字字符组成的字符串str&#xff0c; 返回有多少种转化结果…

AV1技术学习:Transform Coding

对预测残差进行变换编码&#xff0c;去除潜在的空间相关性。VP9 采用统一的变换块大小设计&#xff0c;编码块中的所有的块共享相同的变换大小。VP9 支持 4 4、8 8、16 16、32 32 四种正方形变换大小。根据预测模式选择由一维离散余弦变换 (DCT) 和非对称离散正弦变换 (ADS…

只需三步申请 OV HTTPS证书

申请OV HTTPS证书的步骤主要包括申请、验证、安装三步。下面将详细展开分析每个步骤的具体操作和注意事项&#xff1a; 一、申请 选择证书供应商&#xff1a;一个可信赖且知名的证书供应商对于确保SSL证书质量和后续服务至关重要。市场上有多个知名品牌提供OV SSL证书&#xf…

运维上云/直播上云EasyNVS视频上云管理平台配置域名时的注意事项

EasyNVS视频上云管理平台拥有完整的视频流媒体服务能力和运维管理服务能力&#xff0c;不仅可以通过平台对EasyNVR、EasyGBS进行统一管理&#xff0c;还能解决设备现场没有固定公网IP却需要在公网直播的需求。 有用户反馈&#xff0c;在项目现场配置了EasyNVS的HTTPS证书&#…

Linux发展史

&#x1f4d1;打牌 &#xff1a; da pai ge的个人主页 &#x1f324;️个人专栏 &#xff1a; da pai ge的博客专栏 ☁️宝剑锋从磨砺出&#xff0c;梅花香自苦寒来 ☁️运维工程师的职责&#xff1a;监…

PCI设备BAR寄存器和PCI桥Base、Limit寄存器的初始化

初始化PCI设备的BAR&#xff08;Base Address Register&#xff09;寄存器和PCI桥的Base、Limit寄存器是配置PCI总线地址空间的关键步骤&#xff0c;这些寄存器的设置影响了系统中PCI设备和桥接器对地址空间的使用和访问。下面详细解释它们的初始化过程&#xff1a; PCI设备的…

【MySQL进阶之路 | 高级篇】ER模型

1. 概述 数据库设计是牵一发而动全身的。那么有没有什么办法可以提前看到数据库的全貌呢&#xff1f;比如需要哪些数据表&#xff0c;数据表中应该有哪些字段&#xff0c;通过什么字段进行连接等等。这样我们才能进行整体的梳理和设计。 其实&#xff0c;ER模型就是一个这样的…

Linux cd 和 pwd 命令

目录 1. 更改工作目录 cd 2. 查看当前工作目录 pwd 1. 更改工作目录 cd 打开虚拟机终端的时候&#xff0c;以用户的家目录为默认工作目录&#xff1b; 更多时候需要更改当前的工作目录&#xff08;Change Directory&#xff09;, 语法&#xff1a;cd 【Linux路径】 没有参数…