去中心化的前端構建工具 — Vite

来源:https://www.cnblogs.com/helong-123/archive/2022/06/08/16355709.html
-Advertisement-
Play Games

為什麼要使用Vite 在瀏覽器中提供ES模塊之前,開發人員沒有以模塊化方式編寫JavaScript的本機機制。這就是為什麼我們都很熟悉“捆綁”的概念:使用工具來抓取、處理和連接源模塊到可以在瀏覽器中運行的文件中。 隨著時間的推移,我們看到了webpack、Rollup和Parcel等工具,它們極大地 ...


為什麼要使用Vite

在瀏覽器中提供ES模塊之前,開發人員沒有以模塊化方式編寫JavaScript的本機機制。這就是為什麼我們都很熟悉“捆綁”的概念:使用工具來抓取、處理和連接源模塊到可以在瀏覽器中運行的文件中。

隨著時間的推移,我們看到了webpack、Rollup和Parcel等工具,它們極大地改善了前端開發人員的開發體驗。

然而,當我們開始構建越來越多雄心勃勃的應用程式時,我們要處理的JavaScript數量也呈指數級增長。對於大型項目來說,包含數千個模塊並不罕見。我們開始遇到基於JavaScript的工具的性能瓶頸:啟動開發伺服器通常需要很長的等待時間(有時長達幾分鐘!),即使使用HMR,文件編輯也需要幾秒鐘才能反映到瀏覽器中。緩慢的反饋迴圈會極大地影響開發人員的生產力和滿意度。

Vite旨在通過利用生態系統中的新進展來解決這些問題:瀏覽器中本地ES模塊的可用性,以及用編譯到本地語言編寫的JavaScript工具的興起。

通過本教程中,你將從頭開始構建自己的應用,分別使用 Vite-Cli 和 雲開發平臺

Vite-Cli 快速搭建項目

一、搭建本地開發環境

  • Vite要求Node.js版本>=12.2.0。然而,一些模板需要更高的Node.js版本才能工作,如果你的包管理器發出警告,請升級。您可以使用n、nvm或nvm-windows 在同一臺機器上管理多個版本的Node。 要瞭解如何安裝 Node.js,參閱nodejs.org。 如果你不確定系統中正在運行的 Node.js 版本是什麼,請在終端視窗中運行node -v。
  • npm 包管理器 因為我們通常都會使用Vite 提供的腳手架搭建項目結構,所以要下載並安裝 npm 包並且npm >= 6。,你需要一個 npm 包管理器。本指南使用 npm 客戶端命令行界面,該界面預設安裝在 Node.js。要檢查你是否安裝了 npm 客戶端,請在終端視窗中運行 npm -v 。
  • 你可以使用 Vite-Cli 生成器 來創建項目,生成應用和庫代碼,以及執行各種持續開發任務,比如測試、打包和部署。

二、創建新的初始應用

  • 要想創建一個新的初始應用項目,請執行:

NPM:

npm create vite@latest

Yarn:

yarn create vite

PNPM:

pnpm create vite

然後按照提示操作

您還可以通過附加的命令行選項直接指定要使用的項目名稱和模板。例如,要腳手架一個Vite + Vue項目,運行:

# npm 6.x
npm create vite@latest my-vue-app --template vue

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

# yarn
yarn create vite my-vue-app --template vue

# pnpm
pnpm create vite my-vue-app -- --template vue

請參見 create-vite 瞭解每個支持模板的更多細節:vanilla, vanilla-ts, vue, vue-ts, react, react-ts, preact, preact-ts, lit, lit-ts, svelte, svelte-ts。

三、啟動應用伺服器

進入工作區目錄,並啟動這個應用。

cd my-project
npm install
npm run dev

npm run dev 命令會構建本應用、啟動開發伺服器、監聽源文件,並且當那些文件發生變化時重新構建本應用,
也會打開瀏覽器,並訪問 http://localhost:3000/

你會發現本應用正運行在瀏覽器中。

參考文獻:https://vitejs.dev/

雲開發平臺一鍵部署Vite

作為Vite開發者的你,雲開發平臺為你提供了一站式,全雲端的開發平臺,讓你可以打開瀏覽器就完成開發,調試,上線,同時雲開發平臺底層調用的是阿裡雲集團Serverless產品,可以實現低門檻開發,部署,調試,降低開發上手成本,讓Vite應用可以一鍵快速部署!

一、創建環境

想要一鍵部署Vite,需要以下賬號和服務:

file

二、創建Vite應用

file

  • 雲資源訪問授權。如果您之前沒有使用過雲開發平臺,會出現雲資源授權管理的選項,往下拉出現直至同意授權的字樣,點擊「同意授權」後出現授權成功,點擊進入「下一步」。

file

  • 綁定Github賬號。授權完成後選擇來源倉庫為Github,按照提示點擊去綁定,綁定GitHub帳號,登錄後並點擊Authorize Aliyunworkben允許雲開發平臺構建、發佈你的GitHub代碼為可訪問的網站。

file

  • 選擇fork好的“Vite”代碼倉庫。選擇第一步中的代碼倉庫,主幹分支,並點擊下一步。主幹分支一般指的是代碼的master或main等分支。

file

填寫基本信息,完成創建。填寫基本信息並點擊「完成」。成功後進入到應用詳情和部署界面。

file

三、在日常環境部署

  • 一鍵進行應用部署。在應用詳情頁面點擊日常環境的「部署」按鈕進行一鍵部署,部署狀態變成綠色已部署以後可以點擊訪問部署網站查看效果。

file

  • 訪問Vite網站。日常環境的測試功能變數名稱也是可以訪問的,點擊訪問已部署網站按鈕會出現一個彈出,點擊彈出上的立即訪問就能夠訪問已經部署好的站點了。在部署完成後,可以繼續本地編碼,並將代碼push到應用的“基本信息”中對應的代碼倉庫內。

file

阿裡雲開發平臺多端應用

構建工具不管是日常工作、學習都會涉及到的領域,既如此挑選一款適合自己的應用不止操作起來更順暢同時也使身心愉悅,帶來一天的好心情。

  • 那諸多的應用怎麼去挑選合適自己的呢?
  • 每一個都去下載、去看相關操作文檔去實驗?
  • 又或者聽取同學、同事的建議用著其中一款?
  • 可是每個人的使用場景、需求、特征都一樣嗎?
  • ······

帶著以上諸多疑惑進入雲開發平臺,有多種框架映入眼帘例如:Vue.js、React、Nuxt.js、Next.js、AntDesign等,其中還能看到一些內容管理平臺例如:Hexo、Docusaurus、VuePress、Sapper等。在此條件下我們先挑一個較為感興趣的應用點開去嘗試部署,會發現在原來線上部署應用真的像在手機上下載APP一樣簡單、快速。一個如此、其他便皆是大同小異了,多嘗試一些應用發現每個的相同與不同,自然而然挑選最適合自己需求的應用去在日常所用即可。

忙不完的活,做不完的工作,工作效益最高化是個人都在追求的,那勞逸結合必是肯定的。雲開發平臺也有一些小游戲去幫助大家緩解小心情,類似頭像生成器、2048等。玩著自己部署出來的應用成就感可就加倍呢,如果不喜歡游戲的整體佈局、顏色等,那也可以根據從雲開發平臺部署的經驗在去原有代碼基礎上去修改、部署等。這樣專屬自己的一款游戲就出來了呢,如果有心愛之人送給她這也合成不是一種浪漫呢!

file


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 條碼的應用已深入生活和工作的方方面面。在處理條碼時,常需要和各種文檔格式相結合。當需要在文檔中插入、編輯或者刪除條碼時,可藉助於一些專業的類庫工具來實現。本文,以操作PDF文件為例,介紹如何在編輯表格時,向單元格中添加條形碼。 【程式環境】 本次功能測試中,使用 Free Spire.PDF for ...
  • 1 Sentinel主頁 https://github.com/alibaba/Sentinel/wiki/%E4%B8%BB%E9%A1%B5 1.1 Sentinel介紹 隨著微服務的流行,服務和服務之間的穩定性變得越來越重要。Sentinel 是面向分散式服務架構的流量控制組件,主要以流量為切 ...
  • 前言 dubbo是一款微服務開發框架,它提供了 RPC通信 與 微服務治理 兩大關鍵能力。作為spring cloud alibaba體系中重要的一部分,隨著spring cloud alibaba在國內活躍起來,dubbo也越來越深受各大公司的青睞。本文就來對dubbo的spi機制源碼進行剖析,看 ...
  • ​ 問題描述 我在Eclipse上運行項目的時候,在我用fileUpload上傳圖片,等到下一次Tomcat刷新的時候,這個照片就沒了,而且點擊查看那個文件夾也查看不到有圖片文件。 原因 我後來在網上查詢相關資料發現是Eclipse整 合Tomcat的問題,因為他們整合之後,你用相對路徑上傳的圖片會 ...
  • 用戶 在系統里,用戶是一個核心概念。它代表了一個人的唯一身份標識,除了與角色、團隊、組織架構等有關,甚至還會影響到在同一個界面不同的用戶操作流程與顯示內容都會發生變化,再複雜一點的話,或許在同一個系統內的一個用戶進入到不同產品後的身份也會變化 用戶與角色 用戶可以擁有一個或多個角色,讓角色作為許可權組 ...
  • 當服務端啟動後,但是telnet其監聽的埠卻失敗了。或者當服務端運行了一段時間後,突然其監聽的埠telnet不通了。當類似這樣情況出現時,要如何排查問題所在了? ...
  • 以下代碼實現自定義Button,繼承WinForm的Button,新增了邊框、圓角設置的相關屬性。 public class ZhmButton : Button { private int borderSize = 0; // 邊框 private Color borderColor = Colo ...
  • Linux軟體軟體安裝命令 sudo apt-get update//更新源,檢查更新 sudo apt-get upgrade; sudo apt-get dist-upgrade sudo apt-get install//從源中安裝軟體 sudo apt-get remove 刪除包 gnom ...
一周排行
    -Advertisement-
    Play Games
  • C#TMS系統代碼-基礎頁面BaseCity學習 本人純新手,剛進公司跟領導報道,我說我是java全棧,他問我會不會C#,我說大學學過,他說這個TMS系統就給你來管了。外包已經把代碼給我了,這幾天先把增刪改查的代碼背一下,說不定後面就要趕鴨子上架了 Service頁面 //using => impo ...
  • 委托與事件 委托 委托的定義 委托是C#中的一種類型,用於存儲對方法的引用。它允許將方法作為參數傳遞給其他方法,實現回調、事件處理和動態調用等功能。通俗來講,就是委托包含方法的記憶體地址,方法匹配與委托相同的簽名,因此通過使用正確的參數類型來調用方法。 委托的特性 引用方法:委托允許存儲對方法的引用, ...
  • 前言 這幾天閑來沒事看看ABP vNext的文檔和源碼,關於關於依賴註入(屬性註入)這塊兒產生了興趣。 我們都知道。Volo.ABP 依賴註入容器使用了第三方組件Autofac實現的。有三種註入方式,構造函數註入和方法註入和屬性註入。 ABP的屬性註入原則參考如下: 這時候我就開始疑惑了,因為我知道 ...
  • C#TMS系統代碼-業務頁面ShippingNotice學習 學一個業務頁面,ok,領導開完會就被裁掉了,很突然啊,他收拾東西的時候我還以為他要旅游提前請假了,還在尋思為什麼回家連自己買的幾箱飲料都要叫跑腿帶走,怕被偷嗎?還好我在他開會之前拿了兩瓶芬達 感覺感覺前面的BaseCity差不太多,這邊的 ...
  • 概述:在C#中,通過`Expression`類、`AndAlso`和`OrElse`方法可組合兩個`Expression<Func<T, bool>>`,實現多條件動態查詢。通過創建表達式樹,可輕鬆構建複雜的查詢條件。 在C#中,可以使用AndAlso和OrElse方法組合兩個Expression< ...
  • 閑來無聊在我的Biwen.QuickApi中實現一下極簡的事件匯流排,其實代碼還是蠻簡單的,對於初學者可能有些幫助 就貼出來,有什麼不足的地方也歡迎板磚交流~ 首先定義一個事件約定的空介面 public interface IEvent{} 然後定義事件訂閱者介面 public interface I ...
  • 1. 案例 成某三甲醫預約系統, 該項目在2024年初進行上線測試,在正常運行了兩天後,業務系統報錯:The connection pool has been exhausted, either raise MaxPoolSize (currently 800) or Timeout (curren ...
  • 背景 我們有些工具在 Web 版中已經有了很好的實踐,而在 WPF 中重新開發也是一種費時費力的操作,那麼直接集成則是最省事省力的方法了。 思路解釋 為什麼要使用 WPF?莫問為什麼,老 C# 開發的堅持,另外因為 Windows 上已經裝了 Webview2/edge 整體打包比 electron ...
  • EDP是一套集組織架構,許可權框架【功能許可權,操作許可權,數據訪問許可權,WebApi許可權】,自動化日誌,動態Interface,WebApi管理等基礎功能於一體的,基於.net的企業應用開發框架。通過友好的編碼方式實現數據行、列許可權的管控。 ...
  • .Net8.0 Blazor Hybird 桌面端 (WPF/Winform) 實測可以完整運行在 win7sp1/win10/win11. 如果用其他工具打包,還可以運行在mac/linux下, 傳送門BlazorHybrid 發佈為無依賴包方式 安裝 WebView2Runtime 1.57 M ...