嘗鮮少代碼高性能的Svelte框架

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

為什麼要使用Svelte Svelte 是一種全新的構建用戶界面的方法。傳統框架(如 React 和 Vue)在瀏覽器中完成大部分工作,而 Svelte 將這些工作轉移到構建應用程式時發生的編譯步驟。 Svelte 沒有使用虛擬 DOM diffing 之類的技術,而是編寫了在應用程式狀態發生變化時 ...


為什麼要使用Svelte

Svelte 是一種全新的構建用戶界面的方法。傳統框架(如 React 和 Vue)在瀏覽器中完成大部分工作,而 Svelte 將這些工作轉移到構建應用程式時發生的編譯步驟。

Svelte 沒有使用虛擬 DOM diffing 之類的技術,而是編寫了在應用程式狀態發生變化時以手術方式更新 DOM 的代碼。

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

Svelte -Cli 快速搭建項目

一、搭建本地開發環境

  • Svelte 要求Node.js版本>=12.2.0。然而,一些模板需要更高的Node.js版本才能工作,如果你的包管理器發出警告,請升級。您可以使用n、nvm或nvm-windows 在同一臺機器上管理多個版本的Node。 要瞭解如何安裝 Node.js,參閱nodejs.org。 如果你不確定系統中正在運行的 Node.js 版本是什麼,請在終端視窗中運行node -v。

  • npm 包管理器 因為我們通常都會使用Svelte 提供的腳手架搭建項目結構,所以要下載並安裝 npm 包並且npm >= 6。,你需要一個 npm 包管理器。本指南使用 npm 客戶端命令行界面,該界面預設安裝在 Node.js。要檢查你是否安裝了 npm 客戶端,請在終端視窗中運行 npm -v 。

  • 你可以使用 Svelte -Cli 生成器 來創建項目,生成應用和庫代碼,以及執行各種持續開發任務,比如測試、打包和部署。

二、創建新的初始應用

degit是一個從 git repos 中存儲的模板創建項目的工具。全局安裝

npm install -g degit

然後您可以使用它來啟動一個新項目:

degit sveltejs/template my-new-project

Svelte 還提供了命令行界面,但不建議將其用於生產環境。CLI 會將您的組件編譯為獨立的 JavaScript 文件,但不會在它們更改時自動重新編譯它們,也不會刪除組件之間共用的重覆代碼。請改用上述方法之一。

如果您已svelte全局安裝,則可以使用svelte --help完整的選項列表。一些更常見的操作示例如下:

# Generate a JavaScript module from MyComponent.html
svelte compile MyComponent.html > MyComponent.js
svelte compile -i MyComponent.html -o MyComponent.js

# Generate a UMD module from MyComponent.html, inferring its name from the filename ('MyComponent')
svelte compile -f umd MyComponent.html > MyComponent.js

# Generate a UMD module, specifying the name
svelte compile -f umd -n CustomName MyComponent.html > MyComponent.js

# Compile all .html files in a directory
svelte compile -i src/components -o build/components

您也可以使用npx來使用 CLI,而無需全局安裝 Svelte — 只需在命令前加上npx:npx svelte compile ...

三、啟動應用伺服器

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

cd my-new-project
npm install
npm run dev

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

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

參考文獻:https://v2.svelte.dev/

雲開發平臺一鍵部署Svelte

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

一、創建環境

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

file

二、創建Svelte 應用

file

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

file

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

file

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

file

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

file

三、在日常環境部署

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

file

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

file

阿裡雲開發平臺多端應用

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

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

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

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

file


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

-Advertisement-
Play Games
更多相關文章
  • referer,正確寫法referrer,指的是網站的一種安全策略,在請求頭CSP(Content-Security-Policy),標簽或者是指定的html標簽里都可以設置它,它指的是上一個請求的來源記錄,比如你從a1通過鏈連,跳到a2,那在a2的請求頭裡,就會有a1的網址或者功能變數名稱,這個和refe ...
  • 項目中經常遇到CSV文件的讀寫需求,其中的難點主要是CSV文件的解析。本文會介紹CsvHelper、TextFieldParser、正則表達式三種解析CSV文件的方法,順帶也會介紹一下CSV文件的寫方法。 CSV文件標準 在介紹CSV文件的讀寫方法前,我們需要瞭解一下CSV文件的格式。 文件示例 一 ...
  • 這幾天在看 C++ 的 lambda 表達式,挺有意思,這個標準是在 C11標準 加進去的,也就是 2011 年,相比 C# 2007 還晚了個 4 年, Lambda 這東西非常好用,會上癮,今天我們簡單聊一聊。 一:語法定義 首先我們看下 C++ 語法定義格式: [capture] (param ...
  • 在Winform開發中有時候我們為了不影響主UI線程的處理,以前我們使用後臺線程BackgroundWorker來處理一些任務操作,不過隨著非同步處理提供的便利性,我們可以使用Async-Awati非同步任務處理替換原來的後臺線程BackgroundWorker處理方式,更加的簡潔明瞭。 ...
  • WPF(Windows Presentation Foundation)是微軟推出的基於Windows 的用戶界面框架,由 .NET Framework 3.0 開始引入,與WCF (Windows Communication Foundation)及 WF(Windows Workflow Fou... ...
  • 在我們對數據進行重要修改調整的時候,往往需要跟蹤記錄好用戶操作日誌。一般來說,如對重要表記錄的插入、修改、刪除都需要記錄下來,由於用戶操作日誌會帶來一定的額外消耗,因此我們通過配置的方式來決定記錄那些業務數據的重要調整。本篇隨筆介紹如何在基於SqlSugar的開發框架中,實現對用戶操作日誌記錄的配置... ...
  • 目錄 一、前景回顧 二、物理地址、線性地址和虛擬地址 三、記憶體為什麼要分頁 四、一級頁表 五、二級頁表 一、前景回顧 前面我們說到,保護模式下有著三大特點:地址映射、特權級和分時機制。從我的學習角度來說,我認為地址映射這一塊的知識點尤為繁雜,所以會花費相對比較多的時間來講述,話不多說,開整。 二、物 ...
  • Delay accounting 延時統計 任務在執行時等待某個內核資源會意外遇到延遲,例如可運行的任務正在等待空閑CPU。 per-task的延時統計功能測量下列情況下任務經歷的延遲: 正在等待CPU,waiting for a CPU (while being runnable) 同步塊I/O的 ...
一周排行
    -Advertisement-
    Play Games
  • GoF之工廠模式 @目錄GoF之工廠模式每博一文案1. 簡單說明“23種設計模式”1.2 介紹工廠模式的三種形態1.3 簡單工廠模式(靜態工廠模式)1.3.1 簡單工廠模式的優缺點:1.4 工廠方法模式1.4.1 工廠方法模式的優缺點:1.5 抽象工廠模式1.6 抽象工廠模式的優缺點:2. 總結:3 ...
  • 新改進提供的Taurus Rpc 功能,可以簡化微服務間的調用,同時可以不用再手動輸出模塊名稱,或調用路徑,包括負載均衡,這一切,由框架實現並提供了。新的Taurus Rpc 功能,將使得服務間的調用,更加輕鬆、簡約、高效。 ...
  • 本章將和大家分享ES的數據同步方案和ES集群相關知識。廢話不多說,下麵我們直接進入主題。 一、ES數據同步 1、數據同步問題 Elasticsearch中的酒店數據來自於mysql資料庫,因此mysql數據發生改變時,Elasticsearch也必須跟著改變,這個就是Elasticsearch與my ...
  • 引言 在我們之前的文章中介紹過使用Bogus生成模擬測試數據,今天來講解一下功能更加強大自動生成測試數據的工具的庫"AutoFixture"。 什麼是AutoFixture? AutoFixture 是一個針對 .NET 的開源庫,旨在最大程度地減少單元測試中的“安排(Arrange)”階段,以提高 ...
  • 經過前面幾個部分學習,相信學過的同學已經能夠掌握 .NET Emit 這種中間語言,並能使得它來編寫一些應用,以提高程式的性能。隨著 IL 指令篇的結束,本系列也已經接近尾聲,在這接近結束的最後,會提供幾個可供直接使用的示例,以供大伙分析或使用在項目中。 ...
  • 當從不同來源導入Excel數據時,可能存在重覆的記錄。為了確保數據的準確性,通常需要刪除這些重覆的行。手動查找並刪除可能會非常耗費時間,而通過編程腳本則可以實現在短時間內處理大量數據。本文將提供一個使用C# 快速查找並刪除Excel重覆項的免費解決方案。 以下是實現步驟: 1. 首先安裝免費.NET ...
  • C++ 異常處理 C++ 異常處理機制允許程式在運行時處理錯誤或意外情況。它提供了捕獲和處理錯誤的一種結構化方式,使程式更加健壯和可靠。 異常處理的基本概念: 異常: 程式在運行時發生的錯誤或意外情況。 拋出異常: 使用 throw 關鍵字將異常傳遞給調用堆棧。 捕獲異常: 使用 try-catch ...
  • 優秀且經驗豐富的Java開發人員的特征之一是對API的廣泛瞭解,包括JDK和第三方庫。 我花了很多時間來學習API,尤其是在閱讀了Effective Java 3rd Edition之後 ,Joshua Bloch建議在Java 3rd Edition中使用現有的API進行開發,而不是為常見的東西編 ...
  • 框架 · 使用laravel框架,原因:tp的框架路由和orm沒有laravel好用 · 使用強制路由,方便介面多時,分多版本,分文件夾等操作 介面 · 介面開發註意欄位類型,欄位是int,查詢成功失敗都要返回int(對接java等強類型語言方便) · 查詢介面用GET、其他用POST 代碼 · 所 ...
  • 正文 下午找企業的人去鎮上做貸後。 車上聽同事跟那個司機對罵,火星子都快出來了。司機跟那同事更熟一些,連我在內一共就三個人,同事那一手指桑罵槐給我都聽愣了。司機也是老社會人了,馬上聽出來了,為那個無辜的企業經辦人辯護,實際上是為自己辯護。 “這個事情你不能怪企業。”“但他們總不能讓銀行的人全權負責, ...