跳至內容

開始使用

概述

Vite(法語,意為「快速」,發音為 /vit/,類似 "veet")是一個建置工具,旨在為現代 Web 專案提供更快、更精簡的開發體驗。它由兩個主要部分組成:

Vite 是有主見的,並附帶了合理的預設值。請閱讀功能指南以了解可能實現的功能。透過外掛可以支援框架或與其他工具整合。配置章節說明了如果需要如何調整 Vite 以符合您的專案。

Vite 也透過其外掛 APIJavaScript API高度可擴展,並具有完整的型別支援。

您可以在為何選擇 Vite章節中了解更多關於專案背後的理念。

瀏覽器支援

在開發期間,Vite 將esnext設定為轉換目標,因為我們假設使用現代瀏覽器,且它支援所有最新的 JavaScript 和 CSS 功能。這樣可以防止語法降級,使 Vite 提供的模組盡可能接近原始程式碼。

對於生產環境建置,預設情況下,Vite 以支援原生 ES 模組原生 ESM 動態導入import.meta的瀏覽器為目標。傳統瀏覽器可以透過官方的@vitejs/plugin-legacy來支援。請參閱建置用於生產環境章節以取得更多詳細資訊。

線上試用 Vite

您可以在StackBlitz上線上試用 Vite。它直接在瀏覽器中執行基於 Vite 的建置設定,因此它與本機設定幾乎相同,但不需要在您的電腦上安裝任何東西。您可以導覽至 vite.new/{template} 以選擇要使用的框架。

支援的範本預設值如下:

JavaScriptTypeScript
vanillavanilla-ts
vuevue-ts
reactreact-ts
preactpreact-ts
litlit-ts
sveltesvelte-ts
solidsolid-ts
qwikqwik-ts

建立您的第一個 Vite 專案

相容性注意事項

Vite 需要Node.js 版本 18+ 或 20+。但是,有些範本需要更高的 Node.js 版本才能運作,如果您的套件管理器警告您,請升級。

bash
$ npm create vite@latest
bash
$ yarn create vite
bash
$ pnpm create vite
bash
$ bun create vite

然後按照提示操作!

您也可以透過其他命令列選項直接指定專案名稱和要使用的範本。例如,要建立一個 Vite + Vue 專案,請執行

bash
# npm 7+, extra double-dash is needed:
$ npm create vite@latest my-vue-app -- --template vue
bash
$ yarn create vite my-vue-app --template vue
bash
$ pnpm create vite my-vue-app --template vue
bash
$ bun create vite my-vue-app --template vue

請參閱create-vite以了解每個支援範本的更多詳細資訊:vanillavanilla-tsvuevue-tsreactreact-tsreact-swcreact-swc-tspreactpreact-tslitlit-tssveltesvelte-tssolidsolid-tsqwikqwik-ts

您可以使用 . 作為專案名稱,以在目前目錄中建立專案。

社群範本

create-vite 是一個用於從熱門框架的基本範本快速開始專案的工具。請查看 Awesome Vite 以取得社群維護的範本,其中包含其他工具或以不同的框架為目標。

對於 https://github.com/user/project 上的範本,您可以使用 https://github.stackblitz.com/user/project 在線上試用(在專案的 URL 中的 github 後面加入 .stackblitz)。

您也可以使用像 degit 這樣的工具,使用其中一個範本來建立您的專案。假設專案在 GitHub 上,並使用 main 作為預設分支,您可以使用以下方法建立本機副本:

bash
npx degit user/project#main my-project
cd my-project

npm install
npm run dev

手動安裝

在您的專案中,您可以使用以下方法安裝 vite CLI:

bash
$ npm install -D vite
bash
$ yarn add -D vite
bash
$ pnpm add -D vite
bash
$ bun add -D vite

並建立一個像這樣的 index.html 檔案:

html
<p>Hello Vite!</p>

然後在您的終端機中執行適當的 CLI 命令

bash
$ npx vite
bash
$ yarn vite
bash
$ pnpm vite
bash
$ bunx vite

index.html 將在 https://127.0.0.1:5173 上提供。

index.html 和專案根目錄

您可能已經注意到的一件事是,在 Vite 專案中,index.html 是前端和中心,而不是被藏在 public 裡面。這是故意的:在開發過程中,Vite 是一個伺服器,而 index.html 是您應用程式的進入點。

Vite 將 index.html 視為原始程式碼和模組圖的一部分。它會解析參考您的 JavaScript 原始程式碼的 <script type="module" src="...">。即使是內嵌的 <script type="module"> 和透過 <link href> 參考的 CSS 也享有 Vite 特有的功能。此外,index.html 內的 URL 會自動重新設定基底,因此無需使用特殊的 %PUBLIC_URL% 預留位置。

與靜態 http 伺服器類似,Vite 具有「根目錄」的概念,您的檔案會從該目錄提供。您將在文件的其餘部分看到它被稱為 <root>。您原始程式碼中的絕對 URL 將使用專案根目錄作為基礎來解析,因此您可以編寫程式碼,就像您正在使用正常的靜態檔案伺服器一樣(除了功能更強大!)。Vite 也能夠處理解析為根目錄外檔案系統位置的依賴項,這使其即使在基於單一程式碼儲存庫的設定中也能使用。

Vite 也支援具有多個 .html 進入點的多頁應用程式

指定替代根目錄

執行 vite 會使用目前的工作目錄作為根目錄來啟動開發伺服器。您可以使用 vite serve some/sub/dir 指定替代根目錄。請注意,Vite 也會解析專案根目錄內的其配置檔案(即 vite.config.js,因此如果根目錄發生變更,您需要移動它。

命令列介面

在安裝了 Vite 的專案中,您可以在 npm 指令碼中使用 vite 二進位檔,或使用 npx vite 直接執行它。以下是已建立的 Vite 專案中的預設 npm 指令碼

package.json
json
{
  "scripts": {
    "dev": "vite", // start dev server, aliases: `vite dev`, `vite serve`
    "build": "vite build", // build for production
    "preview": "vite preview" // locally preview production build
  }
}

您可以指定其他 CLI 選項,例如 --port--open。如需完整的 CLI 選項清單,請在您的專案中執行 npx vite --help

了解更多關於命令列介面的資訊

使用未發佈的提交

如果您迫不及待要測試新版本中的最新功能,您需要將vite 儲存庫複製到您的本機電腦,然後自行建置和連結它(需要pnpm

bash
git clone https://github.com/vitejs/vite.git
cd vite
pnpm install
cd packages/vite
pnpm run build
pnpm link --global # use your preferred package manager for this step

然後前往您基於 Vite 的專案,並執行 pnpm link --global vite(或您用來全域連結 vite 的套件管理器)。現在重新啟動開發伺服器以使用最新版本!

社群

如果您有問題或需要協助,請在 DiscordGitHub Discussions 聯絡社群。

在 MIT 許可下發佈。(ccee3d7c)