從零開始:Vue 3 + TypeScript 項目創建全記錄

一次完整的現代前端項目搭建經歷,踩坑與收獲并存

?? 前言

最近創建了一個新的 Vue 3 項目,整個過程中遇到了不少有趣的選擇和決策點。作為一個技術復盤,我想把這次經歷分享出來,希望能幫助到其他開發者,特別是那些剛接觸 Vue 3 生態的朋友們。

??? 項目初始化:選擇的藝術

第一步:腳手架選擇

使用了官方推薦的 npm create vue@latest 命令,這個命令會啟動一個交互式的項目配置向導。相比于老版本的 Vue CLI,新的創建方式更加輕量和現代化。

npm create vue@latest my-vue-project

第二步:技術棧選擇

在配置過程中,面臨了一系列技術選擇:

? 確定選擇的技術
  1. TypeScript - 毫不猶豫選擇

    • 類型安全,減少運行時錯誤
    • 更好的 IDE 支持和代碼提示
    • 團隊協作時代碼更易維護
  2. Vue Router - 單頁應用必備

    • 官方路由解決方案
    • 與 Vue 3 完美集成
  3. Pinia - 狀態管理的新選擇

    • 比 Vuex 更簡潔的 API
    • 完美的 TypeScript 支持
    • Vue 3 官方推薦
  4. Vitest - 現代化測試框架

    • 基于 Vite,啟動速度快
    • 與項目構建工具保持一致
  5. Playwright - E2E 測試

    • 跨瀏覽器測試能力強
    • 微軟出品,維護活躍
?? 糾結的選擇

ESLint + Prettier:最終選擇了啟用

  • 優點:代碼質量保證,團隊協作必備
  • 考慮:初學者可能覺得規則嚴格,但長遠來看絕對值得

?? 實驗性功能:勇敢者的游戲

項目創建過程中,遇到了兩個實驗性功能的選擇:

?? Oxlint

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

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

相關文章

[spring6: @EnableWebSocket]-源碼解析

注解 EnableWebSocket Retention(RetentionPolicy.RUNTIME) Target(ElementType.TYPE) Documented Import(DelegatingWebSocketConfiguration.class) public interface EnableWebSocket {}DelegatingWebSocketConfiguration Configuration(proxyBeanMethods false) public …

Nacos 封裝與 Docker 部署實踐

Nacos 封裝與 Docker 部署指南 0 準備工作 核心概念? 命名空間:用于隔離不同環境(如 dev、test、prod)或業務線,默認命名空間為public。? 數據 ID:配置集的唯一標識,命名規則推薦為{服務名}-{profile}.{擴…

Vue2——4

組件的樣式沖突 scoped默認情況:寫在組件中的樣式會 全局生效 → 因此很容易造成多個組件之間的樣式沖突問題。1. 全局樣式: 默認組件中的樣式會作用到全局2. 局部樣式: 可以給組件加上 scoped 屬性, 可以讓樣式只作用于當前組件原理:當前組件內標簽都被…

30天打好數模基礎-邏輯回歸講解

案例代碼實現一、代碼說明本案例針對信用卡欺詐檢測二分類問題,完整實現邏輯回歸的數據生成→預處理→模型訓練→評估→閾值調整→決策邊界可視化流程。數據生成:模擬1000條交易數據,其中欺詐樣本占20%(類不平衡)&…

CDH yarn 重啟后RM兩個備

yarn rmadmin -transitionToActive --forcemanual rm1 cd /opt/cloudera/parcels/CDH/lib/zookeeper/bin/ ./zkCli.sh -server IT-CDH-Node01:2181 查看是否存在殘留的ActiveBreadCrumb節點 ls /yarn-leader-election/yarnRM #若輸出只有[ActiveBreadCrumb](正常應…

HTML5音頻技術及Web Audio API深入解析

本文還有配套的精品資源&#xff0c;點擊獲取 簡介&#xff1a;音頻處理在IT行業中的多媒體、游戲開發、在線教育和音樂制作等應用領域中至關重要。本文詳細探討了HTML5中的 <audio> 標簽和Web Audio API等技術&#xff0c;涉及音頻的嵌入、播放、控制以及優化。特別…

每日面試題13:垃圾回收器什么時候STW?

STW是什么&#xff1f;——深入理解JVM垃圾回收中的"Stop-The-World"在Java程序運行過程中&#xff0c;JVM會通過垃圾回收&#xff08;GC&#xff09;自動管理內存&#xff0c;釋放不再使用的對象以騰出空間。但你是否遇到過程序突然卡頓的情況&#xff1f;這可能與G…

【系統全面】常用SQL語句大全

一、基本查詢語句 查詢所有數據&#xff1a; SELECT * FROM 表名;查詢特定列&#xff1a; SELECT 列名1, 列名2 FROM 表名;條件查詢&#xff1a; SELECT * FROM 表名 WHERE 條件;模糊查詢&#xff1a; SELECT * FROM 表名 WHERE 列名 LIKE 模式%;排序查詢&#xff1a; SELECT *…

Spring之SSM整合流程詳解(Spring+SpringMVC+MyBatis)

Spring之SSM整合流程詳解-SpringSpringMVCMyBatis一、SSM整合的核心思路二、環境準備與依賴配置2.1 開發環境2.2 Maven依賴&#xff08;pom.xml&#xff09;三、整合配置文件&#xff08;核心步驟&#xff09;3.1 數據庫配置&#xff08;db.properties&#xff09;3.2 Spring核…

C++STL系列之set和map系列

前言 set和map都是關聯式容器&#xff0c;stl中樹形結構的有四種&#xff0c;set&#xff0c;map&#xff0c;multiset,multimap.本次主要是講他們的模擬實現和用法。 一、set、map、multiset、multimap set set的中文意思是集合&#xff0c;集合就說明不允許重復的元素 1……

Linux 磁盤掛載,查看uuid

lsblk -o NAME,FSTYPE,LABEL,UUID,MOUNTPOINT,SIZEsudo ntfsfix /dev/nvme1n1p1sudo mount -o remount,rw /dev/nvme1n1p1 /media/yake/Datasudo ntfsfix /dev/sda2sudo mount -o remount,rw /dev/sda2 /media/yake/MyData

【AJAX】XMLHttpRequest、Promise 與 axios的關系

目錄 一、AJAX原理 —— XMLHttpRequest 1.1 使用XMLHttpRequest 二、 XMLHttpRequest - 查詢參數 &#xff08;就是往服務器后面拼接要查詢的字符串&#xff09; 三、 地區查詢 四、 XMLHttpRequest - 數據提交 五、 認識Promise 5.1 為什么 JavaScript 需要異步&#…

C++中的stack和queue

C中的stack和queue 前言 這一節的內容對于stack和queue的使用介紹會比較少&#xff0c;主要是因為stack和queue的使用十分簡單&#xff0c;而且他們的功能主要也是在做題的時候才會顯現。這一欄目暫時不會寫關于做題的內容&#xff0c;后續我會額外開一個做題日記的欄目的。 這…

Spring Bean生命周期七步曲:定義、實例化、初始化、使用、銷毀

各位小猿&#xff0c;程序員小猿開發筆記&#xff0c;希望大家共同進步。 引言 1.整體流程圖 2.各階段分析 1??定義階段 1.1 定位資源 Spring 掃描 Component、Service、Controller 等注解的類或解析 XML/Java Config 中的 Bean 定義 1.2定義 BeanDefinition 解析類信息…

API安全監測工具:數字經濟的免疫哨兵

&#x1f4a5; 企業的三重致命威脅 1. 漏洞潛伏的定時炸彈 某支付平臺未檢測出API的批量數據泄露漏洞&#xff0c;導致230萬用戶信息被盜&#xff0c;面臨GDPR 1.8億歐元罰單&#xff08;IBM X-Force 2024報告&#xff09;。傳統掃描器對邏輯漏洞漏檢率超40%&#xff08;OWASP基…

Matplotlib詳細教程(基礎介紹,參數調整,繪圖教程)

目錄 一、初識Matploblib 1.1 安裝 Matplotlib 1.2、Matplotlib 的兩種接口風格 1.3、Figure 和 Axes 的深度理解 1.4 設置畫布大小 1.5 設置網格線 1.6 設置坐標軸 1.7 設置刻度和標簽 1.8 添加圖例和標題 1.9 設置中文顯示 1.10 調整子圖布局 二、常用繪圖教程 2…

Redis高可用架構演進面試筆記

1. 主從復制架構 核心概念Redis單節點并發能力有限&#xff0c;通過主從集群實現讀寫分離提升性能&#xff1a; Master節點&#xff1a;負責寫操作Slave節點&#xff1a;負責讀操作&#xff0c;從主節點同步數據 主從同步流程 全量同步&#xff08;首次同步&#xff09;建立連接…

無人機保養指南

定期清潔無人機在使用后容易積累灰塵、沙礫等雜物&#xff0c;需及時清潔。使用軟毛刷或壓縮空氣清除電機、螺旋槳和機身縫隙中的雜質。避免使用濕布直接擦拭電子元件&#xff0c;防止短路。電池維護鋰電池是無人機的核心部件&#xff0c;需避免過度放電或充電。長期存放時應保…

vlm MiniCPM 學習部署實戰

目錄 開源地址&#xff1a; 模型repo下載&#xff1a; 單圖片demo&#xff1a; 多圖推理demo&#xff1a; 論文學習筆記&#xff1a; 部署完整教程&#xff1a; 微調教程&#xff1a; 部署&#xff0c;微調教程&#xff0c;視頻實測 BitCPM4 技術報告 創意&#xff1…

92套畢業相冊PPT模版

致青春某大學同學聚會PPT模版&#xff0c;那些年我們一起走過的歲月PPT模版&#xff0c;某學院某班同學聯誼會PPT模版&#xff0c;匆匆那年PPT模版&#xff0c;青春的紀念冊PPT模版&#xff0c;梔子花開PPT模版&#xff0c;畢業紀念冊PPT模版。 92套畢業相冊PPT模版&#xff1…