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

使用Vite构建现代化前端应用

💓 博客主页:瑕疵的CSDN主页
📝 Gitee主页:瑕疵的gitee主页
⏩ 文章专栏:《热点资讯》

使用Vite构建现代化前端应用

    • 引言
    • Vite 简介
      • 安装 Vite
      • 创建项目
      • 启动开发服务器
      • 项目结构
      • 配置 Vite
      • 使用 Vue 组件
      • 构建生产环境
      • 部署到 GitHub Pages
      • 高级配置
        • 环境变量
        • 代理配置
      • 总结

引言

随着前端技术的不断发展,构建工具也在不断进化。Vite 是由 Vue.js 作者尤雨溪推出的一个新型前端构建工具,它利用了原生 ES 模块导入的特性,提供了更快的冷启动速度和热更新能力。本文将详细介绍如何使用 Vite 构建一个现代化的前端应用。

Vite 简介

Vite 是一个由 Vue.js 团队开发的现代前端构建工具,它具有以下特点:

  • 快速冷启动:Vite 利用了浏览器原生的 ES 模块导入功能,无需打包即可启动开发服务器。
  • 即时热更新:Vite 提供了更快的热更新体验,修改文件后几乎可以立即看到效果。
  • 按需编译:Vite 只在需要时编译模块,而不是一次性打包整个应用。
  • 丰富的插件生态:Vite 拥有丰富的插件生态系统,可以轻松集成各种功能。

安装 Vite

在使用 Vite 之前,需要先安装 Node.js。安装完成后,可以通过以下命令全局安装 Vite:

npm install -g create-vite

创建项目

使用 Vite 创建一个新的项目非常简单。运行以下命令并按照提示选择项目模板:

create-vite my-vite-app

进入项目目录并安装依赖:

cd my-vite-app
npm install

启动开发服务器

在项目根目录下运行以下命令启动开发服务器:

npm run dev

打开浏览器,访问 http://localhost:5000,你应该能够看到 Vite 的欢迎页面。

项目结构

一个典型的 Vite 项目结构如下:

my-vite-app/
├── node_modules/
├── public/
│   └── favicon.ico
├── src/
│   ├── assets/
│   │   └── logo.png
│   ├── components/
│   │   └── HelloWorld.vue
│   ├── App.vue
│   └── main.js
├── .gitignore
├── index.html
├── package.json
├── vite.config.js
└── README.md

配置 Vite

Vite 的配置文件是 vite.config.js,你可以在这个文件中进行各种配置。以下是一个基本的配置示例:

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

export default defineConfig({
  plugins: [vue()],
  server: {
    port: 5000,
    open: true
  },
  build: {
    outDir: 'dist'
  }
})

使用 Vue 组件

src/components 目录下创建一个 Vue 组件 HelloWorld.vue

<template>
  <div class="hello">
    <h1>{{ msg }}</h1>
  </div>
</template>

<script>
export default {
  name: 'HelloWorld',
  props: {
    msg: String
  }
}
</script>

<style scoped>
h1 {
  color: #42b983;
}
</style>

src/App.vue 中引入并使用这个组件:

<template>
  <img alt="Vue logo" src="./assets/logo.png"/>
  <HelloWorld msg="Welcome to Your Vite + Vue.js App"/>
</template>

<script>
import HelloWorld from './components/HelloWorld.vue'

export default {
  name: 'App',
  components: {
    HelloWorld
  }
}
</script>

<style>
#app {
  font-family: Avenir, Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-align: center;
  color: #2c3e50;
  margin-top: 60px;
}
</style>

构建生产环境

在项目根目录下运行以下命令构建生产环境的代码:

npm run build

构建完成后,会在 dist 目录下生成生产环境的文件。你可以将这些文件部署到任何静态文件服务器上。

部署到 GitHub Pages

Vite 提供了方便的插件来部署到 GitHub Pages。首先,安装 vite-plugin-gh-pages 插件:

npm install vite-plugin-gh-pages --save-dev

然后,在 vite.config.js 中配置插件:

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import ghPages from 'vite-plugin-gh-pages'

export default defineConfig({
  plugins: [vue(), ghPages()],
  server: {
    port: 5000,
    open: true
  },
  build: {
    outDir: 'dist'
  }
})

最后,运行以下命令部署到 GitHub Pages:

npm run build && npm run deploy

高级配置

环境变量
Vite 支持环境变量,你可以在项目根目录下创建 .env 文件来定义环境变量。例如:

VITE_APP_TITLE=My Vite App
VITE_API_URL=https://api.example.com

在代码中,你可以通过 import.meta.env 访问这些环境变量:

console.log(import.meta.env.VITE_APP_TITLE);
console.log(import.meta.env.VITE_API_URL);

代理配置
在开发过程中,你可能需要代理 API 请求。你可以在 vite.config.js 中配置代理:

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

export default defineConfig({
  plugins: [vue()],
  server: {
    port: 5000,
    open: true,
    proxy: {
      '/api': {
        target: 'http://localhost:3000',
        changeOrigin: true,
        rewrite: (path) => path.replace(/^\/api/, '')
      }
    }
  },
  build: {
    outDir: 'dist'
  }
})

总结

通过本文,你已经学会了如何使用 Vite 构建一个现代化的前端应用。Vite 的快速冷启动、即时热更新和按需编译等特点,使其成为开发现代前端应用的理想选择。
Vite 项目结构图

Vite 提供了更快的冷启动速度和热更新能力,非常适合现代前端开发。
Vite 开发服务器启动图


http://www.kler.cn/a/377997.html

相关文章:

  • LeetCode:633. 平方数之和(Java)
  • 【日志】初学顺序表
  • less解决function中return写法在浏览器被识别成Object导致样式失败的问题
  • yolov8训练及测试(ubuntu18.04、tensorrt、ros)
  • 基于Spring Boot的中小型制造企业质量管理系统设计与实现,LW+源码+讲解
  • Spring Boot框架下的信息学科平台系统开发实战
  • 使用AIM对SAP PO核心指标的自动化巡检监控
  • SQL,力扣题目1285,找到连续区间的开始和结束数字【窗口函数】
  • VsCode前端常用快捷键
  • 冷钱包与热钱包的差异 | 加密货币存储的安全方案
  • 03.DDD六边形架构
  • apache pdfbox 设置PDF表单域,Java生成PDF模板简单案例。
  • 【ARCGIS实验】地形特征线的提取
  • Spring Boot框架下校园社团信息管理的创新实践
  • 图像识别中的高斯滤波和椒盐滤波的适用场景与不同实现
  • SpringBoot 集成 Mybatis-Plus,LambdaQueryWrapper 使用方法
  • Git 本地操作(2)
  • Razor C# 逻辑
  • -XSS-
  • Qt的程序如何打包详细教学
  • React常用前端框架合集
  • Ubuntu下安装和配置MySQL5.7教程
  • C/C++中的基本数据类型
  • Qt——QWidget
  • Java类和对象(上篇)
  • Github 2024-10-30C开源项目日报 Top10