一、Vue3 簡介
Vue3 是 Vue.js 的最新主要版本,于 2020 年 9 月正式發布。它在性能、可維護性和開發體驗方面都有了顯著的改進。相比 Vue2,Vue3 的主要特點包括:
-
更高效的響應式系統:使用?
Proxy
替代了?Object.defineProperty
,解決了數組和深層嵌套對象監聽的問題。 -
組合式 API(Composition API)?:提供了更靈活的方式來組織組件邏輯,尤其適合復雜場景下的代碼復用。
-
更好的 TypeScript 支持:Vue3 內置對 TypeScript 的友好支持,使得類型推導更加準確。
-
體積更小,性能更高?:通過 Tree-shaking 和優化核心庫,Vue3 的體積更小,運行效率更高。
二、Vue3 基礎概念
(一)響應式系統的改進
Vue3 的響應式系統是其最重要的改進之一。在 Vue2 中,響應式依賴于 Object.defineProperty,這種方式存在以下問題:
-
無法監聽對象屬性的動態添加或刪除。
-
對數組的操作支持有限。
Vue3 使用了 ES6 的?Proxy
?來實現響應式,解決了這些問題。例如:
const handler = {get(target, key, receiver) {console.log(`獲取屬性: ${key}`);return Reflect.get(target, key, receiver);},set(target, key, value, receiver) {console.log(`設置屬性: ${key} = ${value}`);return Reflect.set(target, key, value, receiver);}
};const state = new Proxy({ count: 0 }, handler);state.count++; // 輸出:獲取屬性: count,設置屬性: count = 1
通過Proxy
,Vue3 能夠全面監聽對象和數組的變化,從而提升性能和開發體驗。
(二)組合式 API
組合式 API 是 Vue3 引入的一項重要特性,旨在解決 Vue2 中選項式 API 在復雜組件中邏輯分散的問題。它的核心思想是將相關的邏輯組合在一起,而不是按照選項(如?data
、methods
)來組織。
示例代碼
import { ref, computed } from 'vue';export default {setup() {const count = ref(0); // 定義一個響應式變量const doubleCount = computed(() => count.value * 2); // 計算屬性function increment() {count.value++;}return {count,doubleCount,increment};}
};
在這個例子中,所有與計數相關的邏輯都被集中到?setup
?函數中,代碼更加清晰易讀
(三)更好的類型推導
Vue3 內置了對 TypeScript 的深度支持,開發者可以直接在組件中使用類型聲明,減少類型錯誤的發生。例如:
import { defineComponent, ref } from 'vue';interface User {name: string;age: number;
}export default defineComponent({setup() {const user = ref<User>({ name: 'Alice', age: 25 });function updateAge(newAge: number) {user.value.age = newAge;}return { user, updateAge };}
});
通過 TypeScript,我們可以確保數據類型的正確性,提高代碼的健壯性。
三、環境搭建
(一)安裝 Node.js
在搭建 Vue3 開發環境之前,我們需要先安裝 Node.js。Node.js 是一個基于 Chrome V8 引擎的 JavaScript 運行時環境,它允許我們在服務器端運行 JavaScript。
-
訪問?Node.js 官方網站?。
-
根據您的操作系統(Windows、macOS 或 Linux),選擇對應的安裝包并下載。
-
安裝完成后,可以通過以下命令檢查是否安裝成功:
node -v
npm -v
如果能夠正確輸出版本號,則說明安裝成功。
(二)使用 Vite 創建 Vue3 項目
相比于傳統的 Vue CLI,Vite
?是一個更現代化的構建工具,具有更快的冷啟動速度和熱更新能力。接下來,我們將使用?Vite
來創建一個 Vue3 項目。
1、全局安裝?create-vue
打開終端或命令提示符,運行以下命令以全局安裝?create-vue
:
npm install -g create-vue
2、創建 Vue3 項目
使用以下命令創建一個新的 Vue3 項目:
create-vue my-vue3-project
在創建過程中,系統會提示您選擇一些配置選項,例如:
-
是否使用 TypeScript?
-
是否使用 Pinia(Vuex 的替代方案)?
-
是否啟用測試工具(如 Vitest 和 Cypress)?
您可以根據實際需求進行選擇。如果不確定,可以選擇默認配置。
3、進入項目目錄并安裝依賴
創建完成后,進入項目目錄并安裝依賴:
cd my-vue3-project
npm install
4、啟動開發服務器
安裝完成后,運行以下命令啟動開發服務器:
npm run dev
啟動成功后,終端會顯示一個本地訪問地址(通常是?http://localhost:5173
)。打開瀏覽器訪問該地址,即可看到項目運行效果。
四、項目結構解析
創建好項目后,我們來看一下 Vue3 項目的基本結構(以默認配置為例):
my-vue3-project
├── node_modules/ # 項目依賴的模塊
├── public/ # 靜態資源,如 favicon.ico 等
├── src/ # 項目的源代碼
│ ├── assets/ # 圖片、樣式等資源
│ ├── components/ # 自定義組件
│ ├── views/ # 頁面視圖
│ ├── App.vue # 根組件
│ ├── main.ts # 入口文件(TypeScript)
├── .gitignore # Git 忽略配置
├── index.html # 頁面模板
├── package.json # 項目依賴和腳本配置
├── tsconfig.json # TypeScript 配置(如果選擇使用 TypeScript)
└── vite.config.ts # Vite 配置文件
關鍵文件說明
index.html
項目的基礎 HTML 文件,所有的內容都會被注入到這個文件中。
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Vite + Vue3</title>
</head>
<body><div id="app"></div><script type="module" src="/src/main.ts"></script>
</body>
</html>
main.ts
項目的入口文件,負責初始化 Vue 應用并掛載到 DOM 上。
import { createApp } from 'vue';
import App from './App.vue';createApp(App).mount('#app');
App.vue
根組件,定義了應用的整體結構。
<template><div id="app"><h1>Hello Vue3 with Vite</h1></div>
</template><script lang="ts">
export default {name: 'App'
};
</script><style>
#app {text-align: center;color: #2c3e50;
}
</style>
五、總結
在本篇文章中,我們了解了 Vue3 的基礎概念,并通過Vite
成功搭建了開發環境。相比于傳統的 Vue CLI,Vite
?提供了更快的開發體驗,特別適合現代前端項目的需求。接下來,我們將深入學習 Vue3 的更多特性和功能,逐步提升我們的開發能力。
文章轉載自:Code_Cracke
原文鏈接:Vue3 基礎概念與環境搭建 - Code_Cracke - 博客園
體驗地址:引邁 - JNPF快速開發平臺_低代碼開發平臺_零代碼開發平臺_流程設計器_表單引擎_工作流引擎_軟件架構