2.從0開始搭建vue項目(node.js,vue3,Ts,ES6)

從“0到跑起來一個 Vue 項目”,重點是各個工具之間的關聯關系、職責邊界和技術演化脈絡。

從你寫代碼 → 到代碼能跑起來 → 再到代碼可以部署上線,每一步都有不同的工具參與。

😺😺1. 安裝 Node.js —— 萬事的根基

Node.js 是 JS 的運行環境,它讓 JS 能在瀏覽器之外運行,等于一個“JS版的JVM”。

💡 它的作用:
? 內置 V8 引擎(谷歌開發),能把 JS/TS 編譯成機器碼執行。
? 內置 npm(包管理器),讓你方便安裝和管理各種依賴(例如 axios、vue)。
? 是很多前端工具(如 Vite、Webpack、ESLint、TS 編譯器)的“運行底座”。

為什么不是瀏覽器來跑?

因為開發階段你寫的很多東西(比如 TypeScript、Vue 組件)瀏覽器不認識,得先通過 Node.js 環境來“預處理”、打包、轉譯。

😺😺 2. 使用 npm/yarn/pnpm —— 下載各種依賴庫

你需要別人寫好的工具,npm 就是你下載這些工具的“快遞小哥”。

比如你需要:
? vue:前端框架
? axios:發請求
? vite:構建工具
? typescript:編譯 TS

你可以一行命令:

npm install vue axios vite typescript

npm 會幫你從網上(npm registry)拉取這些庫及其依賴,統一放到 node_modules 目錄中,并更新 package.json 文件。

😺😺 3. 初始化項目結構(通常使用 Vite 腳手架)

npm create vite@latest my-app
cd my-app
npm install

Vite 會給你搭好一個包含:
? 項目結構(src、public、vite.config.ts)
? Vue 支持(通過插件)
? TypeScript 支持
? 熱更新配置
? ESM 模塊支持

👉 這一步相當于“讓項目有個基本形態”。

😺😺 4. 使用 Vite 運行開發環境

npm run dev

你會看到:

vite v5.0 dev server running at http://localhost:5173

這是 Vite 的“開發服務器”。但它背后做了很多事:

Vite 的作用(核心):
? 用 Node.js 啟動自己(Vite 是 Node 工具)
? 在后臺用 ESBuild 和 Rollup 編譯項目代碼(把 TS 編譯成 JS、把 Vue 編譯成普通模塊)
? 實現瀏覽器原生支持的 ES Module 動態加載
? 實現 熱更新(改一行代碼自動刷新)

😺😺 5. Vue 框架登場:幫你寫頁面 + 構建交互

你最終寫的,是 .vue 文件。

這里你用到了 Vue 的核心能力:
? ref() 和 reactive() 是 Vue 響應式系統(Proxy)創建的響應對象
? 會被 Vue 編譯器轉換為 h() 函數(虛擬 DOM)
?

Vue 的職責是:
? 幫你封裝組件、渲染視圖、處理狀態更新
? 用響應式讓 UI 和數據雙向綁定
? 在構建階段(由 Vite 驅動)把 .vue 文件變成純 JS 模塊供瀏覽器運行

😺😺6.TS和Es6語法

ES6
? 由 ECMAScript 標準組織提出。
? 提供了 let/const、箭頭函數、解構、import/export 等寫法。
? 需要 瀏覽器或 Node.js 支持 ES6,或者通過構建工具(如 Vite)轉譯成老版本 JS(比如 ES5)才能運行。

所以,ES6 本身不能“運行”代碼,只是你寫代碼時用的一套規則。

TypeScript 是 JavaScript 的超集
? 加了類型系統,寫起來更安全。
? 不能被瀏覽器或 Node.js 直接運行,必須先“編譯成 JS”。
? 常和 Vite/Webpack/Babel 配合使用,最終輸出純 JS 文件。

TS 就像你寫作文時加了一些注釋,交稿前要刪掉注釋再打印出來。運行的永遠是 JS。

😺😺7. 構建生產環境代碼

開發完畢后,你執行:

npm run build

這時:
? Vite 會用 Rollup 把所有模塊打包成一堆 JS 文件(按需拆分)
? 把 TS 編譯成 JS
? 把 Vue 模板編譯為 DOM 操作
? 壓縮、混淆、優化體積

生成 /dist 目錄,瀏覽器就能直接部署這些文件上線了。

🎯 整體技術鏈圖譜總結(關系+流向)

在這里插入圖片描述
在這里插入圖片描述

😺😺😺小總結
Node.js 提供運行環境,npm 負責安裝依賴。
Vite 是中間橋梁,把 Vue + TS + ES6 編譯打包好。vue是一個框架,幫你封裝組件,渲染視圖,處理狀態,用響應式讓ui和數據雙向綁定。在構建階段 由vite驅動,把.vue變成.js在瀏覽器運行。開發中還會用到很多工具庫,axios、vue-router、vant 等依賴,都是運行時需要的工具庫,由 npm 統一管理。

下一篇 3.詳細學習一下node.js的特性和底層原理
下一篇 4.vue.js的特性和底層原理,vue2 vue3的對比。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/85208.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/85208.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/85208.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

MQTT的Thingsboards的使用

訪問云服務 https://thingsboard.cloud/ 新建一個設備 彈出 默認是mosquittor的客戶端。 curl -v -X POST http://thingsboard.cloud/api/v1/tnPrO76AxF3TAyOblf9x/telemetry --header Content-Type:application/json --data "{temperature:25}" 換成MQTTX的客戶…

金磚國家人工智能高級別論壇在巴西召開,華院計算應邀出席并發表主題演講

當地時間5月20日,由中華人民共和國工業和信息化部,巴西發展、工業、貿易與服務部,巴西公共服務管理和創新部以及巴西科技創新部聯合舉辦的金磚國家人工智能高級別論壇,在巴西首都巴西利亞舉行。 中華人民共和國工業和信息化部副部…

BLE協議全景圖:從0開始理解低功耗藍牙

BLE(Bluetooth Low Energy)作為一種針對低功耗場景優化的通信協議,已經廣泛應用于智能穿戴、工業追蹤、智能家居、醫療設備等領域。 本文是《BLE 協議實戰詳解》系列的第一篇,將從 BLE 的發展歷史、協議棧結構、核心機制和應用領域出發,為后續工程實戰打下全面認知基礎。 …

表單校驗代碼和樹形結構值傳遞錯誤解決

表單校驗代碼,兩種方式校驗,自定義的一種校驗,與element-ui組件原始的el-form表單的校驗不一樣,需要傳遞props和rules過去校驗 const nextStep () > {const data taskMsgInstance.value.formDataif(data.upGradeOrg ) {elm…

vscode 配置 QtCreat Cmake項目

1.vscode安裝CmakeTool插件并配置QT中cmake的路徑,不止這一處 2.cmake生成器使用Ninja(Ninja在安裝QT時需要勾選),可以解決[build] cc1plus.exe: error: too many filenames given; type ‘cc1plus.exe --help’ for usage 編譯時…

關于數據倉庫、數據湖、數據平臺、數據中臺和湖倉一體的概念和區別

我們談論數據中臺之前, 我們也聽到過數據平臺、數據倉庫、數據湖、湖倉一體的相關概念,它們都與數據有關系,但他們和數據中臺有什么樣的區別, 下面我們將圍繞數據平臺、數據倉庫、數據湖和數據中臺的區別進行介紹。 一、相關概念…

WIN11+eclipse搭建java開發環境

環境搭建(WIN11ECLIPSE) 安裝JAVA JDK https://www.oracle.com/cn/java/technologies/downloads/#jdk24安裝eclipse https://www.eclipse.org/downloads/ 注意:eclipse下載時指定aliyun的軟件源,后面安裝會快一些。默認是jp漢化e…

通義靈碼深度實戰測評:從零構建智能家居控制中樞,體驗AI編程新范式

一、項目背景:零基礎挑戰全棧智能家居系統 目標:開發具備設備控制、環境感知、用戶習慣學習的智能家居控制中樞(PythonFlaskMQTTReact) 挑戰點: 需集成硬件通信(MQTT)、Web服務(Flask)、前端交互(React) 調用天氣AP…

【Python進階】CPython

目錄 ?? 前言??? 技術背景與價值?? 當前技術痛點??? 解決方案概述?? 目標讀者說明?? 一、技術原理剖析?? 核心架構圖解?? 核心作用講解?? 關鍵技術模塊說明?? Python實現對比??? 二、實戰演示?? 環境配置要求?? 核心代碼實現案例1:查看字節碼案例…

Hive中資源優化方法的詳細說明

在Hive中,資源優化的核心目標是合理分配集群資源(如內存、CPU、任務并行度等),避免資源競爭和浪費,提升查詢效率。以下是資源優化的具體方法,涵蓋 YARN資源配置、任務并行度、內存管理、JVM重用、推測執行 …

流媒體協議分析:流媒體傳輸的基石

在流媒體傳輸過程中,協議的選擇至關重要,它決定了數據如何封裝、傳輸和解析,直接影響著視頻的播放質量和用戶體驗。本文將深入分析幾種常見的流媒體傳輸協議,探討它們的特點、應用場景及優缺點。 協議分類概述 流媒體傳輸協議根據…

GitHub 趨勢日報 (2025年05月29日)

📊 由 TrendForge 系統生成 | 🌐 https://trendforge.devlive.org/ 🌐 本日報中的項目描述已自動翻譯為中文 📈 今日獲星趨勢圖 今日獲星趨勢圖 1864 agenticSeek 753 langflow 749 n8n 736 prompt-eng-interactive-tutorial 42…

Jenkins-Pipeline:學習筆記

Jenkins-Pipeline:學習筆記 在 DevOps 領域中,Pipeline(流水線) 是實現持續集成(CI)和持續部署(CD)的核心機制。學習 Pipeline 通常需要從以下幾個方面入手,涵蓋基礎概念、工具使用、語法規則、實踐優化等 一、Pipeline 基礎概念 什么是 Pipeline? 流水線是將軟件交…

內存管理 : 04段頁結合的實際內存管理

一、課程核心主題引入 這一講,我要給大家講的是真正的內存管理,也就是段和頁結合在一起的內存管理方式。之前提到過,我們先學習了分段管理內存的工作原理,知道操作系統采用分段的方式,讓用戶程序能以分段的結構進行編…

RAID磁盤陣列配置

RAID磁盤陣列配置 文章目錄 RAID磁盤陣列配置一、磁盤管理其他相關命令1.fsck-檢查文件的正確性2.dd-建立和使用交換文件3.mkswap-建立和設置SWAP交換分區 二、RAID配置 一、磁盤管理其他相關命令 1.fsck-檢查文件的正確性 [rootlocalhost ~]# fsck -aC /dev/sda1 //檢查文…

網站服務器出現異常的原因是什么?

網站時企業和個人用戶進行提供信息和服務的重要平臺,隨著時間的推移,網站服務器出現異常情況也是常見的問題之一,這可能會導致網站無法正常訪問或者是運行緩慢,會嚴重影響到用戶的體驗感,本文就來介紹一下網站服務器出…

LINUX528 重定向

2>&1 我的理解: 2>&1,2stderr錯誤輸出,1stdout輸出,stderr一般和stdout是分別輸出(管道符只傳遞stdout,據元寶,stderr默認輸出到終端;如果重定向符不進行2顯示重定向&…

【Python高階】面向對象

目錄 ?? 前言??? 技術背景與價值?? 當前技術痛點??? 解決方案概述?? 目標讀者說明?? 一、技術原理剖析?? 核心知識圖譜?? 核心作用講解?? 關鍵技術模塊說明?? 技術選型對比??? 二、實戰演示?? 環境配置要求?? 核心代碼實現案例1:面向對象電商系統…

榕壹云醫療服務系統:基于ThinkPHP+MySQL+UniApp的多門店醫療預約小程序解決方案

在數字化浪潮下,傳統醫療服務行業正面臨效率提升與客戶體驗優化的雙重挑戰。針對口腔、美容、診所、中醫館、專科醫院及康復護理等需要預約或診斷服務的行業,我們開發了一款基于ThinkPHP+MySQL+UniApp的多門店服務預約小程序——榕壹云醫療服務系統。該系統通過模塊化設計與開…

Vue-過濾器

過濾器 時間戳格式化 實現方式 計算屬性方法過濾器 基礎依賴 day.min.js 下載鏈接放到 相對路徑 js 目錄下 Computed 代碼 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><title>過濾器</title>…