Vite 多种前端框架的构建

简介: Vite 多种前端框架的构建

Vite 多种前端框架的构建Vite 是一个快速的前端构建工具,最初是为 Vue 设计的,但现在已经支持多种前端框架的构建。它通过强大的插件系统可以支持现代流行的框架,如 React、Vue、Svelte、Preact、Lit 等。

下面我会展示 Vite 支持的一些常见前端框架的构建,并对比其使用示例。

  1. Vue 3 项目构建
    Vite 最初是为 Vue 3 设计的,因此对 Vue 支持非常完善。

初始化 Vue 3 项目
pnpm create vite my-vue-app --template vue
1
或者使用 npm:

npm init @vitejs/app my-vue-app --template vue
1
主要配置示例
vite.config.js 中默认会自动集成 Vue 的插件:

import { defineConfig } from 'vite';
import vue from '@vitejs/plugin-vue';

export default defineConfig({
plugins: [vue()],
});
1
2
3
4
5
6
Vue 3 示例代码


{ { message }}

1 2 3 4 5 6 7 8 9 2. React 项目构建 Vite 对 React 的支持也非常成熟,官方提供了 React 的插件。 初始化 React 项目 pnpm create vite my-react-app --template react 1 或者使用 npm: npm init @vitejs/app my-react-app --template react 1 主要配置示例 vite.config.js 会自动引入 React 插件: import { defineConfig } from 'vite'; import react from '@vitejs/plugin-react'; export default defineConfig({ plugins: [react()], }); 1 2 3 4 5 6 React 示例代码 import { useState } from 'react'; function App() { const [message, setMessage] = useState('Hello React with Vite!'); return
{message}
; } export default App; 1 2 3 4 5 6 7 8 9 3. Svelte 项目构建 Vite 也很好地支持 Svelte,通过 @sveltejs/vite-plugin-svelte 插件来集成。 初始化 Svelte 项目 pnpm create vite my-svelte-app --template svelte 1 或者使用 npm: npm init @vitejs/app my-svelte-app --template svelte 1 主要配置示例 vite.config.js 配置 Svelte 插件: import { defineConfig } from 'vite'; import { svelte } from '@sveltejs/vite-plugin-svelte'; export default defineConfig({ plugins: [svelte()], }); 1 2 3 4 5 6 Svelte 示例代码


{message}



1
2
3
4
5
6
7
  1. Preact 项目构建
    Preact 是一个轻量级的 React 替代品,Vite 支持通过 @preact/preset-vite 插件来构建 Preact 项目。

初始化 Preact 项目
pnpm create vite my-preact-app --template preact
1
或者使用 npm:

npm init @vitejs/app my-preact-app --template preact
1
主要配置示例
vite.config.js 配置 Preact 插件:

import { defineConfig } from 'vite';
import preact from '@preact/preset-vite';

export default defineConfig({
plugins: [preact()],
});
1
2
3
4
5
6
Preact 示例代码
import { useState } from 'preact/hooks';

function App() {
const [message, setMessage] = useState('Hello Preact with Vite!');

return

{message}
;
}

export default App;
1
2
3
4
5
6
7
8
9

  1. Lit 项目构建
    Lit 是用于构建 Web Components 的库,Vite 可以通过简单的配置支持它。

初始化 Lit 项目
pnpm create vite my-lit-app --template vanilla
1
或者使用 npm:

npm init @vitejs/app my-lit-app --template vanilla
1
主要配置示例
不需要额外的插件,Vite 默认支持构建。

vite.config.js:

import { defineConfig } from 'vite';

export default defineConfig({});
1
2
3
Lit 示例代码
import { LitElement, html, css } from 'lit';

class MyComponent extends LitElement {
static styles = cssdiv { color: blue; };

render() {
return html<div>Hello Lit with Vite!</div>;
}
}

customElements.define('my-component', MyComponent);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

  1. Vanilla JavaScript 项目构建
    Vite 对原生 JavaScript 项目的支持也是极其简单的,适合没有框架的轻量应用。

初始化 Vanilla 项目
pnpm create vite my-vanilla-app --template vanilla
1
或者使用 npm:

npm init @vitejs/app my-vanilla-app --template vanilla
1
主要配置示例
不需要插件,默认支持。

vite.config.js:

import { defineConfig } from 'vite';

export default defineConfig({});
1
2
3
Vanilla 示例代码
document.getElementById('app').innerHTML = <h1>Hello Vanilla JS with Vite!</h1>;
1

  1. 对比使用示例
    框架 初始化命令 Vite 插件 示例代码 (展示 “Hello World”)
    Vue pnpm create vite my-vue-app --template vue @vitejs/plugin-vue { { message }}
    React pnpm create vite my-react-app --template react @vitejs/plugin-react const [message, setMessage] = useState('Hello React!'); return
    {message}

    Svelte pnpm create vite my-svelte-app --template svelte @sveltejs/vite-plugin-svelte

    {message}


    Preact pnpm create vite my-preact-app --template preact @preact/preset-vite const [message, setMessage] = useState('Hello Preact!'); return
    {message}

    Lit pnpm create vite my-lit-app --template vanilla 无需插件 class MyComponent extends LitElement { render() { return html\
    Hello Lit!}}
    Vanilla JS pnpm create vite my-vanilla-app --template vanilla 无需插件 document.getElementById('app').innerHTML = '

    Hello Vanilla JS!

    ';
    总结
    Vite 支持多种前端框架构建,包括 Vue、React、Svelte、Preact、Lit 等。不同的框架通过简单的配置即可使用 Vite 高效地进行开发。Vite 的插件生态可以很好地支持每种框架,并提供极致的开发体验和快速的热重载能力。在对比中可以看到,使用 Vite 各框架的配置和开发流程都非常简洁高效。
相关文章
|
1月前
|
前端开发 机器人 API
前端大模型入门(一):用 js+langchain 构建基于 LLM 的应用
本文介绍了大语言模型(LLM)的HTTP API流式调用机制及其在前端的实现方法。通过流式调用,服务器可以逐步发送生成的文本内容,前端则实时处理并展示这些数据块,从而提升用户体验和实时性。文章详细讲解了如何使用`fetch`发起流式请求、处理响应流数据、逐步更新界面、处理中断和错误,以及优化用户交互。流式调用特别适用于聊天机器人、搜索建议等应用场景,能够显著减少用户的等待时间,增强交互性。
254 2
|
1月前
|
前端开发
深入解析React Hooks:构建高效且可维护的前端应用
本文将带你走进React Hooks的世界,探索这一革新特性如何改变我们构建React组件的方式。通过分析Hooks的核心概念、使用方法和最佳实践,文章旨在帮助你充分利用Hooks来提高开发效率,编写更简洁、更可维护的前端代码。我们将通过实际代码示例,深入了解useState、useEffect等常用Hooks的内部工作原理,并探讨如何自定义Hooks以复用逻辑。
|
25天前
|
JavaScript 前端开发 Docker
前端全栈之路Deno篇(二):几行代码打包后接近100M?别慌,带你掌握Deno2.0的安装到项目构建全流程、剖析构建物并了解其好处
在使用 Deno 构建项目时,生成的可执行文件体积较大,通常接近 100 MB,而 Node.js 构建的项目体积则要小得多。这是由于 Deno 包含了完整的 V8 引擎和运行时,使其能够在目标设备上独立运行,无需额外安装依赖。尽管体积较大,但 Deno 提供了更好的安全性和部署便利性。通过裁剪功能、使用压缩工具等方法,可以优化可执行文件的体积。
103 3
前端全栈之路Deno篇(二):几行代码打包后接近100M?别慌,带你掌握Deno2.0的安装到项目构建全流程、剖析构建物并了解其好处
|
14天前
|
监控 前端开发 JavaScript
探索微前端架构:构建可扩展的现代Web应用
【10月更文挑战第29天】本文探讨了微前端架构的核心概念、优势及实施策略,通过将大型前端应用拆分为多个独立的微应用,提高开发效率、增强可维护性,并支持灵活的技术选型。实际案例包括Spotify和Zalando的成功应用。
|
19天前
|
前端开发 JavaScript API
前端框架新探索:Svelte在构建高性能Web应用中的优势
【10月更文挑战第26天】近年来,前端技术飞速发展,Svelte凭借独特的编译时优化和简洁的API设计,成为构建高性能Web应用的优选。本文介绍Svelte的特点和优势,包括编译而非虚拟DOM、组件化开发、状态管理及响应式更新机制,并通过示例代码展示其使用方法。
33 2
|
20天前
|
前端开发 API UED
深入理解微前端架构:构建灵活、高效的前端应用
【10月更文挑战第23天】微前端架构是一种将前端应用分解为多个小型、独立、可复用的服务的方法。每个服务独立开发和部署,但共同提供一致的用户体验。本文探讨了微前端架构的核心概念、优势及实施方法,包括定义服务边界、建立通信机制、共享UI组件库和版本控制等。通过实际案例和职业心得,帮助读者更好地理解和应用微前端架构。
|
22天前
|
前端开发 JavaScript 开发工具
Vite 4.0 发布,下一代的前端工具链
【10月更文挑战第21天】Vite 4.0 的发布标志着前端开发领域的又一次重要进步。它为开发者带来了更高效、更智能、更具创新性的开发体验,正逐渐成为下一代前端工具链的引领者。
|
26天前
|
前端开发 API UED
拥抱微前端架构:构建灵活、高效的前端应用
【10月更文挑战第17天】微前端架构是一种将前端应用拆分为多个小型、独立、可复用的服务的方法,每个服务可以独立开发、部署和维护。本文介绍了微前端架构的核心概念、优势及实施步骤,并分享了业界应用案例和职业心得,帮助读者理解和应用这一新兴架构模式。
|
1月前
|
存储 监控 前端开发
掌握微前端架构:构建未来前端应用的基石
【10月更文挑战第12天】随着前端技术的发展,传统的单体应用架构已无法满足现代应用的需求。微前端架构通过将大型应用拆分为独立的小模块,提供了更高的灵活性、可维护性和快速迭代能力。本文介绍了微前端架构的概念、核心优势及实施步骤,并探讨了其在复杂应用中的应用及实战技巧。
|
20天前
|
监控 前端开发 JavaScript
前端技术探索:构建高效、可维护的Web应用
【10月更文挑战第23天】前端技术探索:构建高效、可维护的Web应用
37 0