EP46 - 工具

更新 發佈閱讀 10 分鐘
Tooling應該是介紹許多實用的工具吧!
這應該對開發會非常有幫助,快來挖寶

在線嘗試 - Try it Online

你不需要在本機上安裝任何東西即可嘗試 Vue SFC - 有一些線上平台允許你直接在瀏覽器中進行嘗試:

同時,我們也推薦在報告錯誤時使用這些線上平台提供的復現例子。

專案鷹架 - Project Scaffolding​

Vite

Vite 是一個輕量且快速的建置工具,提供了對 Vue 單文件元件(SFC)的原生支持。它是由 Vue 的作者 Evan You 開發的!

要開始使用 Vite + Vue,只需執行以下命令:

$ npm create vue@latest

這條命令將安裝並執行 create-vue,官方的 Vue 專案鷹架工具。

要了解更多關於 Vite 的資訊,請查看 Vite 文檔

要在 Vite 專案中配置 Vue 特定的行為,例如將選項傳遞給 Vue 編譯器,請參考 @vitejs/plugin-vue 的文檔。上述提到的線上平台也支持將文件下載為 Vite 專案。

Vue CLI

Vue CLI 是官方基於 webpack 的工具鏈。現在它處於維護模式,我們建議新專案使用 Vite,除非你依賴於特定的 webpack 功能。在大多數情況下,Vite 將提供更優越的開發體驗。

有關從 Vue CLI 遷移到 Vite 的信息,請參考:

瀏覽器內模板編譯的注意事項

在沒有建置步驟的情況下使用 Vue 時,元件模板要麼直接寫在頁面的 HTML 中,要麼作為內嵌的 JavaScript 字串。在這種情況下,Vue 需要將模板編譯器發送到瀏覽器,以便進行即時模板編譯。另一方面,如果我們使用建置步驟預編譯模板,則不需要編譯器。為了減少客戶端捆綁包的大小,Vue 提供了不同的「版本」,針對不同的用例進行優化。

  • vue.runtime.* 開頭的建置文件是僅運行時的版本:它們不包括編譯器。使用這些版本時,所有模板必須通過建置步驟進行預編譯。
  • 不包含 .runtime 的建置文件是完整版本:它們包括編譯器並支持在瀏覽器中直接編譯模板。然而,它們將增加約 14KB 的負載。

我們的默認工具設置使用僅運行時的版本,因為 SFC 中的所有模板都是預編譯的。如果因某種原因,即使在有建置步驟的情況下,你仍需要在瀏覽器中編譯模板,可以通過配置建置工具將 vue 別名設置為 vue/dist/vue.esm-bundler.js 來實現。

如果你在尋找無需建置步驟的輕量替代方案,可以查看 petite-vue

Q:為什麼要遷移?

  1. 性能提升: Vite 透過即時服務器啟動和快速熱模組替換(HMR)提供更快的開發體驗。這使得開發者在修改代碼時能立即看到變更,而不需重新載入整個頁面。
  2. 簡化的配置: Vite 的配置通常比 Vue CLI 更簡單,並且預設情況下已經針對現代瀏覽器進行優化。這減少了繁瑣的設定時間。
  3. 現代化的工具: Vite 使用 ES 模組作為內部依賴,這使得開發環境更符合現代前端開發的標準,並更好地支持未來的技術演進。
  4. 更好的支援: Vite 獲得了更多社群和生態系統的支援,許多新特性和最佳實踐也更快地集成進 Vite。
  5. 持續維護: Vue CLI 現在處於維護模式,未來不會有重大更新。選擇 Vite 可以確保你在長期內能夠獲得最新的功能和修復。

IDE 支援 - IDE Support

建議的 IDE 設定是 VS Code 加上 Vue - Official 擴展(以前稱為 Volar)。該擴展提供語法高亮、TypeScript 支援以及模板表達式和組件屬性的智能提示功能。

提示: Vue - Official 取代了我們之前為 Vue 2 提供的官方 VS Code 擴展 Vetur。如果你目前在 Vue 3 專案中安裝了 Vetur,請務必在 Vue 3 專案中禁用它。

WebStorm 也提供了對 Vue SFC 的優秀內建支援。

其他支援語言服務協議(LSP)的 IDE 也可以透過 LSP 利用 Volar 的核心功能:

瀏覽器開發工具 - Browser Devtools​

Vue 瀏覽器開發工具擴展允許你探索 Vue 應用的組件樹,檢查單個組件的狀態,追蹤狀態管理事件,並分析性能。

raw-image

TypeScript

主文章:使用 Vue 與 TypeScript

Vue - 官方擴展提供對使用 <script lang="ts"> 區塊的 SFC 進行類型檢查,包括模板表達式和跨組件的屬性驗證。

使用 vue-tsc 可以從命令行執行相同的類型檢查,或生成 SFC 的 d.ts 文件。

測試 - Testing

主文章:測試指南

推薦使用 Cypress 進行端到端(E2E)測試。它也可以通過 Cypress 組件測試運行器用於 Vue SFC 的組件測試。

Vitest 是由 Vue/Vite 團隊成員創建的測試運行器,專注於速度。它專為基於 Vite 的應用設計,以提供相同的單元/組件測試即時反饋循環。

Jest 可以通過 vite-jest 與 Vite 一起使用。然而,這僅在你需要將現有的基於 Jest 的測試套件遷移到基於 Vite 的設置時才建議使用,因為 Vitest 提供相似的功能,並具有更高效的整合。

偵測錯誤 - Linting

Vue 團隊維護 eslint-plugin-vue,這是一個支持 SFC 特定 linting 規則的 ESLint 插件。

之前使用 Vue CLI 的用戶可能習慣通過 webpack loaders 配置 linting 工具。然而,當使用基於 Vite 的建置設置時,我們的一般建議是:

  1. npm install -D eslint eslint-plugin-vue

然後遵循 eslint-plugin-vue配置指南

  1. 設置 ESLint IDE 擴展,例如 VS Code 的 ESLint,以便在開發過程中獲得編輯器內的 linting 反饋。這樣可以避免在啟動開發伺服器時產生不必要的 linting 費用。
  2. 將 ESLint 作為生產建置命令的一部分執行,以便在部署到生產環境之前獲得完整的 linting 反饋。
  3. (可選)設置像 lint-staged 的工具,自動在 git 提交時檢查已修改的文件。

格式 - Formatting

Vue - 官方 VS Code 擴展提供 Vue SFC 的內建格式化支持。
另外,Prettier 也提供內建的 Vue SFC 格式化支持。

SFC 自訂區塊整合 - SFC Custom Block Integrations​

自訂區塊被編譯成對相同 Vue 文件的導入,並附有不同的請求查詢。這些導入請求的處理由底層的建置工具負責。

  • 如果使用 Vite,應使用自訂的 Vite 插件將匹配的自訂區塊轉換為可執行的 JavaScript。範例
  • 如果使用 Vue CLI 或普通的 webpack,則應配置 webpack loader 來轉換匹配的區塊。範例

低階套件 - Lower-Level Packages

@vue/compiler-sfc

文檔

此套件是 Vue 核心單一庫的一部分,始終與主 Vue 套件發佈相同版本。它作為主 Vue 套件的依賴關係被包含,並通過 vue/compiler-sfc 進行代理,因此無需單獨安裝。

該套件本身提供用於處理 Vue SFC 的低階工具,僅適用於需要在自訂工具中支持 Vue SFC 的工具開發者。

提示: 始終通過 vue/compiler-sfc 深度導入來使用此套件,因為這樣可以確保其版本與 Vue 執行時保持同步。

@vitejs/plugin-vue

文檔

官方插件,提供 Vite 中的 Vue SFC 支持。

vue-loader

文檔

官方 loader,提供 webpack 中的 Vue SFC 支持。如果您正在使用 Vue CLI,還可以參考有關修改 Vue CLI 中 vue-loader 選項的文檔

其他在線遊樂場 - Other Online Playgrounds

好多開發工具唷!好的框架工具少不了!!!
什麼時候我也來開發一款工具 www


留言
avatar-img
留言分享你的想法!
avatar-img
卡關的人生
2會員
73內容數
分享生活趣事~
卡關的人生的其他內容
2024/11/10
Vue 提供了多種動畫技術來提升應用程式的互動性,包括基於 CSS 類別的動畫、基於狀態的動畫,以及使用監視器來動畫化數值。基於類別的動畫可通過動態添加 CSS 類別來觸發,像是觸發按鈕搖動效果。基於狀態的動畫則是透過樣式綁定,根據互動動態調整元素的外觀,例如根據滑鼠位置改變背景顏色。
Thumbnail
2024/11/10
Vue 提供了多種動畫技術來提升應用程式的互動性,包括基於 CSS 類別的動畫、基於狀態的動畫,以及使用監視器來動畫化數值。基於類別的動畫可通過動態添加 CSS 類別來觸發,像是觸發按鈕搖動效果。基於狀態的動畫則是透過樣式綁定,根據互動動態調整元素的外觀,例如根據滑鼠位置改變背景顏色。
Thumbnail
2024/11/09
Web Components 是一組網頁原生 API,允許開發者創建可重複使用的自訂元素。Vue 與 Web Components 是互補的技術,Vue 支援整合和創建自訂元素。
Thumbnail
2024/11/09
Web Components 是一組網頁原生 API,允許開發者創建可重複使用的自訂元素。Vue 與 Web Components 是互補的技術,Vue 支援整合和創建自訂元素。
Thumbnail
2024/11/08
Vue 建議使用模板構建應用程式,但在需要 JavaScript 的全程式化功能時,渲染函數可派上用場。渲染函數通過 h() 函數創建 vnode,h 是 hyperscript 的簡寫,能生成 HTML 的 JavaScript。
Thumbnail
2024/11/08
Vue 建議使用模板構建應用程式,但在需要 JavaScript 的全程式化功能時,渲染函數可派上用場。渲染函數通過 h() 函數創建 vnode,h 是 hyperscript 的簡寫,能生成 HTML 的 JavaScript。
Thumbnail
看更多
你可能也想看
Thumbnail
透過蝦皮分潤計畫,輕鬆賺取零用金!本文分享5-6月實測心得,包含數據流程、實際收入、平臺優點及注意事項,並推薦高分潤商品,教你如何運用空閒時間創造被動收入。
Thumbnail
透過蝦皮分潤計畫,輕鬆賺取零用金!本文分享5-6月實測心得,包含數據流程、實際收入、平臺優點及注意事項,並推薦高分潤商品,教你如何運用空閒時間創造被動收入。
Thumbnail
單身的人有些會養寵物,而我養植物。畢竟寵物離世會傷心,植物沒養好再接再厲就好了~(笑)
Thumbnail
單身的人有些會養寵物,而我養植物。畢竟寵物離世會傷心,植物沒養好再接再厲就好了~(笑)
Thumbnail
不知你有沒有過這種經驗?衛生紙只剩最後一包、洗衣精倒不出來,或電池突然沒電。這次一次補貨,從電池、衛生紙到洗衣精,還順便分享使用心得。更棒的是,搭配蝦皮分潤計畫,愛用品不僅自己用得安心,分享給朋友還能賺回饋。立即使用推薦碼 X5Q344E,輕鬆上手,隨時隨地賺取分潤!
Thumbnail
不知你有沒有過這種經驗?衛生紙只剩最後一包、洗衣精倒不出來,或電池突然沒電。這次一次補貨,從電池、衛生紙到洗衣精,還順便分享使用心得。更棒的是,搭配蝦皮分潤計畫,愛用品不僅自己用得安心,分享給朋友還能賺回饋。立即使用推薦碼 X5Q344E,輕鬆上手,隨時隨地賺取分潤!
Thumbnail
身為一個典型的社畜,上班時間被會議、進度、KPI 塞得滿滿,下班後只想要找一個能夠安靜喘口氣的小角落。對我來說,畫畫就是那個屬於自己的小樹洞。無論是胡亂塗鴉,還是慢慢描繪喜歡的插畫人物,那個專注在筆觸和色彩的過程,就像在幫心靈按摩一樣,讓緊繃的神經慢慢鬆開。
Thumbnail
身為一個典型的社畜,上班時間被會議、進度、KPI 塞得滿滿,下班後只想要找一個能夠安靜喘口氣的小角落。對我來說,畫畫就是那個屬於自己的小樹洞。無論是胡亂塗鴉,還是慢慢描繪喜歡的插畫人物,那個專注在筆觸和色彩的過程,就像在幫心靈按摩一樣,讓緊繃的神經慢慢鬆開。
Thumbnail
在這篇文章中,我們將介紹如何快速建置一個 Vue 專案,並涵蓋一些基本的檔案結構和組件使用的方式。希望能幫助你順利開始 Vue 的開發之旅!
Thumbnail
在這篇文章中,我們將介紹如何快速建置一個 Vue 專案,並涵蓋一些基本的檔案結構和組件使用的方式。希望能幫助你順利開始 Vue 的開發之旅!
Thumbnail
Vite 作為輕量快速的建置工具,原生支持 Vue SFC,並且提供簡化的配置與優越的開發體驗。文章還介紹了 IDE 支援、測試工具(如 Cypress 和 Vitest)、Linting 和格式化工具的使用,幫助開發者提高開發效率與代碼質量。
Thumbnail
Vite 作為輕量快速的建置工具,原生支持 Vue SFC,並且提供簡化的配置與優越的開發體驗。文章還介紹了 IDE 支援、測試工具(如 Cypress 和 Vitest)、Linting 和格式化工具的使用,幫助開發者提高開發效率與代碼質量。
Thumbnail
透過 npm run dev 啟動開發伺服器,並可使用 VSCode 的簡單瀏覽器即時預覽。開始實作一個簡單的 "Hello World" 範例,透過 <script setup> 簡化元件定義,並理解響應式變數的運作。實作後能加深對 Vue 的理解,實踐是學習的最佳方式。
Thumbnail
透過 npm run dev 啟動開發伺服器,並可使用 VSCode 的簡單瀏覽器即時預覽。開始實作一個簡單的 "Hello World" 範例,透過 <script setup> 簡化元件定義,並理解響應式變數的運作。實作後能加深對 Vue 的理解,實踐是學習的最佳方式。
Thumbnail
這一集用最新的Vite工具去創建初始檔案。Vite用於創建和構建Web應用程序,具有快速的啟動時間、即時熱更新、小型體積、支持多種框架和可擴展性等優點。
Thumbnail
這一集用最新的Vite工具去創建初始檔案。Vite用於創建和構建Web應用程序,具有快速的啟動時間、即時熱更新、小型體積、支持多種框架和可擴展性等優點。
Thumbnail
Vite 是由 Vue 開發者 Evan You 所開發出來,用來加快、優化程式碼打包的工具,在這裡我們不免會需要提到大部分前端開發者可能都會聽過、使用過的前端工具:Webpack。 在那之前,我們先來聊聊為什麼前端會需要所謂的打包工具呢?
Thumbnail
Vite 是由 Vue 開發者 Evan You 所開發出來,用來加快、優化程式碼打包的工具,在這裡我們不免會需要提到大部分前端開發者可能都會聽過、使用過的前端工具:Webpack。 在那之前,我們先來聊聊為什麼前端會需要所謂的打包工具呢?
Thumbnail
Vue3 學習筆記,專案建立與基礎響應式篇
Thumbnail
Vue3 學習筆記,專案建立與基礎響應式篇
Thumbnail
Vue CLI與React的create-react-app是類似的工具,目的都是為了讓開發者快速建置環境,節省複雜的安裝相關環境的時間,簡單的一個建立專案指令與設定,即建立一個內建了Hot-Reload, webpack, ESLint等功能的專案。 安裝Vue CLI: 選擇檢查程式碼的時機
Thumbnail
Vue CLI與React的create-react-app是類似的工具,目的都是為了讓開發者快速建置環境,節省複雜的安裝相關環境的時間,簡單的一個建立專案指令與設定,即建立一個內建了Hot-Reload, webpack, ESLint等功能的專案。 安裝Vue CLI: 選擇檢查程式碼的時機
Thumbnail
「VSCode 是世上最棒的 IDE 了吧」這時有人跳出來表示不服,定睛一看原來是那陳年的大哥 Visual Studio,他說道:「用 Windows 做開發的人一定要裝 Visual Studio 這樣專業的 IDE,不要裝其他次等的文字編輯器,才可以有效提升專業度。」
Thumbnail
「VSCode 是世上最棒的 IDE 了吧」這時有人跳出來表示不服,定睛一看原來是那陳年的大哥 Visual Studio,他說道:「用 Windows 做開發的人一定要裝 Visual Studio 這樣專業的 IDE,不要裝其他次等的文字編輯器,才可以有效提升專業度。」
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News