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

Vite 使用学习指南

Vite 的基本概念和特点

Vite 是什么,它的主要特点是什么

Vite 是一个基于 ES modules 的前端构建工具,它的主要特点包括:

  1. 快速的冷启动:Vite 采用了基于浏览器原生 ES 模块的开发模式,可以在开发时快速启动应用,减少了冷启动时间。

  2. 按需编译:Vite 可以根据需要动态地编译模块,而不是像传统的打包工具一样将所有模块都打包到一个文件中。

  3. 热更新:Vite 支持热更新,可以在开发时实时更新修改后的代码,提高开发效率。

  4. 插件化:Vite 支持插件化,可以通过插件扩展 Vite 的功能。

  5. 支持多种前端框架:Vite 支持多种前端框架,包括 Vue、React、Angular 等。

Vite 和传统的打包工具(如 webpack)有什么不同

Vite 和传统的打包工具(如 webpack)有以下不同点:

  1. 构建方式不同:Vite 采用了基于浏览器原生 ES 模块的开发模式,可以在开发时快速启动应用,减少了冷启动时间,而 webpack 则是将所有模块打包到一个文件中。

  2. 编译方式不同:Vite 可以根据需要动态地编译模块,而不是像 webpack 一样将所有模块都打包到一个文件中。

  3. 热更新方式不同:Vite 支持热更新,可以在开发时实时更新修改后的代码,而 webpack 则需要重新编译整个应用才能看到修改后的效果。

  4. 插件化方式不同:Vite 支持插件化,可以通过插件扩展 Vite 的功能,而 webpack 则需要通过 loader 和 plugin 扩展其功能。

  5. 支持的框架不同:Vite 支持多种前端框架,包括 Vue、React、Angular 等,而 webpack 则需要通过相应的 loader 和 plugin 来支持不同的框架。

总之,Vite 和 webpack 在构建方式、编译方式、热更新方式、插件化方式和支持的框架等方面都有所不同。Vite 更加轻量、快速、灵活,适合于开发小型应用和组件库,而 webpack 则更加适合于大型应用的构建和优化。

安装和配置 Vite

安装 Vite 可以通过 npm 或 yarn 进行安装。具体步骤如下:

  1. 打开终端或命令行工具,进入项目目录。

  2. 使用以下命令安装 Vite:

    • 使用 npm 安装:npm install vite

    • 使用 yarn 安装:yarn add vite

  3. 安装完成后,可以在 package.json 文件中查看 Vite 的版本信息。

注意:在安装 Vite 之前,需要确保已经安装了 Node.js 和 npm 或 yarn。

配置 Vite 的基本选项

vite.config.js 是 Vite 的配置文件,可以用来配置 Vite 的各种选项。以下是 vite.config.js 中可以配置的所有选项:

  1. root:指定项目根目录,默认为当前工作目录。

  2. base:指定应用部署的基础路径,默认为 /。

  3. mode:指定应用的模式,可以是 development 或 production,默认为 development。

  4. server:配置开发服务器的选项,例如端口号、代理等。

  5. build:配置构建选项,例如输出目录、是否压缩代码等。

  6. plugins:配置使用的插件。

  7. resolve:配置模块解析选项,例如别名、扩展名等。

  8. css:配置 CSS 相关选项,例如是否提取 CSS、是否压缩 CSS 等。

  9. optimizeDeps:配置依赖优化选项,例如是否预构建依赖、是否忽略某些依赖等。

  10. define:配置全局变量,可以在代码中使用。

  11. esbuild:配置 esbuild 的选项,例如是否启用 JSX、是否启用 TypeScript 等。

  12. alias:配置模块别名,可以简化模块路径。

  13. logLevel:配置日志级别,可以控制日志输出的详细程度。

  14. clearScreen:配置是否在每次构建前清空控制台输出。

  15. emitAssets:配置是否输出构建产物。

  16. rollupInputOptions:配置 Rollup 的输入选项。

  17. rollupOutputOptions:配置 Rollup 的输出选项。

以上是 vite.config.js 中可以配置的所有选项,具体的使用方法可以参考 Vite 的官方文档。

使用 Vite 开发 Vue 应用

  1. 首先,安装 Vue CLI 和 Vite:
npm install -g @vue/cli
npm install -g vite
  1. 创建一个新的 Vue 项目:
vue create my-vue-app
  1. 进入项目目录并安装 Vite 插件:
cd my-vue-app
npm install --save-dev vite
  1. 修改 package.json 文件,添加以下脚本:
"scripts": {"dev": "vite","build": "vite build"
}
  1. 创建一个新的 Vue 组件:
<template><div><h1>{{ message }}</h1></div>
</template><script>
export default {data() {return {message: 'Hello, World!'}}
}
</script>
  1. main.js 文件中引入该组件并挂载到 DOM 上:
import { createApp } from 'vue'
import App from './App.vue'createApp(App).mount('#app')
  1. 运行项目:
npm run dev
  1. 打开浏览器并访问 http://localhost:3000,即可看到页面上显示的 “Hello, World!”。

使用 Vite 开发 React 应用

  1. 安装 Node.js 和 npm

首先需要安装 Node.js 和 npm,可以在官网下载安装包进行安装。

  1. 创建 React 应用

使用 create-react-app 命令创建 React 应用:

npx create-react-app my-app
  1. 安装 Vite

在项目根目录下执行以下命令安装 Vite:

npm install vite --save-dev
  1. 修改 package.json

在 package.json 文件中添加以下代码:

"scripts": {"start": "vite","build": "vite build"
}
  1. 修改 index.html

将 index.html 文件中的 script 标签修改为以下代码:

<script type="module" src="/src/index.js"></script>
  1. 创建 src/index.js

在 src 目录下创建 index.js 文件,并添加以下代码:

import React from 'react';
import ReactDOM from 'react-dom';
import App from './App';ReactDOM.render(<React.StrictMode><App /></React.StrictMode>,document.getElementById('root')
);
  1. 运行应用

执行以下命令启动应用:

npm start
  1. 构建应用

执行以下命令构建应用:

npm run build

Vite 的高级用法

插件开发:Vite 提供了丰富的插件 API,可以通过编写插件来扩展 Vite 的功能,例如添加自定义的文件类型、自定义处理器、自定义中间件等。

自定义配置:Vite 的默认配置已经足够满足大部分项目的需求,但是对于一些特殊的需求,可以通过自定义配置来满足。例如,可以通过配置 alias 来简化模块的引入路径,可以通过配置 optimizeDeps 来优化依赖的打包方式等。

HMR(热更新):Vite 内置了 HMR 功能,可以在开发过程中实现快速的热更新,而不需要刷新整个页面。在开发过程中,只需要修改代码,保存后即可看到修改后的效果,非常方便。

生产环境构建:Vite 不仅可以用于开发环境,还可以用于生产环境构建。在生产环境中,Vite 会自动进行代码压缩、混淆、分割等优化,以提高页面加载速度和性能。

vite 插件开发

  1. 创建一个vite实例:
import { createServer } from 'vite';const server = await createServer({// 配置项
});
  1. 获取vite实例的配置项:
const config = server.config;
  1. 获取vite实例的插件列表:
const plugins = server.plugins;
  1. 注册一个自定义插件:
server.config.plugins.push(myPlugin);
  1. 获取vite实例的中间件列表:
const middlewares = server.middlewares;
  1. 注册一个自定义中间件:
server.middlewares.use(myMiddleware);
  1. 构建项目:
import { build } from 'vite';const result = await build({// 配置项
});

配置别名

  1. 在项目根目录下创建一个vite.config.js文件。
  2. 在该文件中,使用defineConfig函数来定义Vite的配置选项。
  3. 在配置选项中,使用alias属性来配置别名。例如:
import { defineConfig } from 'vite';export default defineConfig({alias: {'@': '/src','components': '/src/components','utils': '/src/utils',},
});

上述代码中,我们定义了三个别名:@代表项目根目录下的/src目录,components代表/src/components目录,utils代表/src/utils目录。

  1. 在代码中使用别名。例如:
import MyComponent from '@/components/MyComponent';
import { formatDate } from 'utils/dateUtils';

上述代码中,我们使用了@别名来代表/src目录,使用components别名来代表/src/components目录,使用utils别名来代表/src/utils目录。

http://www.lryc.cn/news/91187.html

相关文章:

  • 【算法训练(day6)】双指针模板
  • 免费常用的API接口大全
  • 【HTML】第 2 节 - HTML 标签
  • MATLAB算法实战应用案例精讲-【数模应用】残差检验(附Java、python和MATLAB代码)
  • 初学Qt(Day03)
  • 皮卡丘xss之htmlspecialchars、xss之href输出、xss之js输出
  • ArrayList和LinkedList的区别
  • 记录 vue3 webpack 使用 iframe 遇到的坑
  • 华为OD机试真题 Java 实现【去除多余空格】【2023Q1 100分】
  • SAP-MM 条件类型字段解析
  • C#,码海拾贝(28)——求解“对称正定方程组”的“平方根法”之C#源代码
  • 碳纤维单丝外径测试中的纳米分辨率激光衍射法解决方案
  • 服务(第三十二篇)nginx做缓存服务器
  • Java 集合、数组、字符串的相互转换(关于list.toArray(new String[0])的源码分析)
  • Redis的全局命令及相关误区
  • C++核心编程—类和对象,类的三大特性——封装、继承、多态
  • keep-alive 是 Vue 内置的一个组件,被用来缓存组件实例。
  • (八)Spring之IOC控制反转、DI依赖注入介绍和使用(详解)
  • 凸缺陷 convexityDefects
  • c语言编程练习题:7-43 Shuffling Machine
  • ffmpeg enum AVChannel枚举解析
  • invest模型教程
  • LinuxShell编程
  • stm32学习笔记-11 SPI通信
  • “微商城”项目(3页面布局)
  • Java 八股文 - MySQL
  • 周赛347(模拟、思维题、动态规划+优化)
  • String AOP的使用
  • 华为芯片基地旁,龙华科技小镇大水坑片区城市更新单元旧改项目
  • 论文阅读 | 频谱监测、认知电子战、网电攻击