日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > vue >内容正文

vue

React,Angular和Vue的15种绝佳替代品

發(fā)布時間:2023/12/29 vue 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 React,Angular和Vue的15种绝佳替代品 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

“音樂之聲”可能會說:“讓我們從頭開始,這是一個很好的起點。” 但是幾乎每個開發(fā)人員都知道這是一個愚蠢的計劃。 正確的起點是由一支偉大的開源開發(fā)人員團隊建立的堅實基礎(chǔ)。 克隆他們的辛苦工作,然后添加足夠的代碼以使其成為您自己的代碼。 無需重復(fù)每個人以前所做的事情。

這是一個簡單的計劃-只要您選擇即可。 不幸的是,選擇該基礎(chǔ)幾乎像剛開始一樣困難。 Web框架世界是一個非常活躍的開發(fā)領(lǐng)域,可能會有許多優(yōu)秀的開源項目對您的項目來說是一個很好的開端。

[更深入: 如何開始使用WebAssembly 。 ? WebAssembly的下一步是什么 。 ? 8個使WebAssembly嶄露頭角的項目 ?那么, WebAssembly的下一步究竟是什么? | 通過InfoWorld的App Dev Report新聞通訊了解編程方面的熱門話題。 ]

更糟糕的是,創(chuàng)建這些不同項目的不同團隊在不同的道路上出發(fā),因為他們與其他選擇在理念上存在嚴重分歧。 他們研究了其他框架,并決定可以做得更好。 換句話說,他們這樣做是有原因的,您可能同意也可能不同意。

下面列出的好地方列表有意讓市場領(lǐng)導(dǎo)者React,Angular和Vue離開,只是為了使事情變得更簡單。 這并不意味著三巨頭都不好。 它們可能仍然是您的正確選擇。 只是他們經(jīng)常被談?wù)?#xff0c;而這些討論卻忽略了其他一些不錯的選擇。

有很多充分的理由選擇最受歡迎的。 您穿鞋的許多人環(huán)顧四周,其中許多人有充分的理由選擇React , Angular或Vue 。 但是那是那時。 同時,一些聰明的人已經(jīng)創(chuàng)建了更新的框架,這些框架更快,更簡單,更強大,或者是任何最高級的框架。

在下面的大多數(shù)情況下,這些團隊通過重新構(gòu)想框架的本質(zhì)來創(chuàng)建有趣而強大的功能。 這是一種花哨的說法,他們最終刪除了一個功能,從而使框架更加高效,從而減少了所需的內(nèi)存量,加快了啟動時間,或者通常使它更加靈活。 或者在某些情況下,他們添加了新的想法,這些想法將來可能會成為標準。

如果您有時間進行投資,這里列出了其他一些有趣的選擇。 它們不一定適合某些人,也不是所有人的最佳選擇,但對于您來說可能是更好的選擇。 您的工作(如果選擇接受)是為Web應(yīng)用程序創(chuàng)建一個完整的描述,寫下有關(guān)不同用例的相對牢固的描述,然后牢記這些工具進行評估。

也許您喜歡一種設(shè)計代碼的特殊方法。 也許您的應(yīng)用程序不需要胖的,更流行的框架中的某些功能。 有許多其他理由可以選擇其中一條途徑進行投資。 您可能會發(fā)現(xiàn)其中之一為您的應(yīng)用程序創(chuàng)造了奇跡。

小DOM

如果您喜歡虛擬DOM的想法,但是您不希望采用React,Vue或其他大牌框架的人們的思維方式帶來的所有限制,那么Petit DOM是解決之道。 您將獲得少量的代碼,這些代碼將使您可以操縱標簽的虛擬集合,然后將其遷移到真實的DOM。 有關(guān)組件結(jié)構(gòu)和渲染的所有其他事情都由您決定。 如果您的組件很簡單,或者要創(chuàng)建僅由您自己創(chuàng)建的一些超級復(fù)雜的呈現(xiàn)層次結(jié)構(gòu),那么這可能是您的基礎(chǔ),因為它所提供的全部只是用于虛擬化DOM的工具。

剩余

虛擬DOM可能并不適合所有人。 它占用空間,因此,如果您的操作不太復(fù)雜,則最好將指令直接傳遞到官方DOM。 剩余庫就是這樣做的。 它采用了每個人都喜歡的標記JSX,并將其編譯為一些將操縱真實DOM的代碼。 正如他們在廣告業(yè)務(wù)中所說的那樣,它削減了中間商。 沒有差別。 沒有秘密的額外層。 只是對真實DOM的純粹操縱。 如果您的代碼簡單而直接,足以對DOM做幾件事,那么為什么還要打擾虛擬的注意力呢?

RE:DOM

對于那些不想在虛擬Dom中投入任何內(nèi)存的人來說,另一個選擇是一個名為RE:DOM的小型庫(2KB)。 RE:DOM包含一些基本例程,使您可以通過一些簡單JavaScript調(diào)用來創(chuàng)建所有標記和組件。 語法更接近CSS,因此您只需幾次擊鍵就可以指定帶有ID和類的相當復(fù)雜的標簽。 您的“小于”(<)和“大于”(>)鍵將表示感謝。

秘銀

并非所有替代方案都是微小且極簡的。 在這種情況下, 秘銀可能被稱為“中型”框架,盡管它的大小只有8KB左右。 所有這些代碼都使用其他有效代碼來構(gòu)建具有有效更新機制的虛擬DOM,但同時還提供了一套標準化的工具來應(yīng)對許多標準挑戰(zhàn),例如路由和XMLHttpRequest調(diào)用。 項目設(shè)計者希望Mithril項目相對標準化,他們認為將此代碼添加到主庫中可以提高標準化程度。 如果這還不夠的話,他們還會推出一些標準格式和慣用結(jié)構(gòu)。

鮑勃里爾

如果您喜歡React的虛擬DOM和有狀態(tài)組件,并且喜歡使用TypeScript進行編程,那么Bobril或它的對Angular友好的表親ngBobril可能只是門票。 在某些基準測試中,該框架始終比React或Angular快得多,這可能是因為diff算法更快并且缺乏對同構(gòu)JavaScript的支持。 如果需要,還有一些CSS操作的速記功能和一個完整的狀態(tài)管理層BobX 。

馬可

如果您一直在花時間競標Pez分配器或其他收藏品,那么您會體驗到Marko的強大功能。Marko是一個纖巧,快速的框架,eBay通過開放源代碼許可證共享了該框架。 最好的部分可能是非常輕量級的模板語法,該語法巧妙地從HTML中刪除了大多數(shù)多余的脂肪,因此該結(jié)構(gòu)是由縮進定義的,而沒有其他內(nèi)容。 而且渲染引擎非常快速,能夠驅(qū)動更新速度超過60fps的精致舞蹈DIV星座。

斯維爾特

您的標準Web框架附帶一個編譯器和一個下載的庫,該庫在運行時處理編譯器生成的內(nèi)容。 這個分兩步的過程允許編寫非常復(fù)雜的代碼,但要以每次打開頁面時等待下載和解析運行時庫為代價。 Svelte編譯器通過吐出幾乎可以獨立運行的純JavaScript來擺脫這種復(fù)雜性,盡管它僅在某些較新的瀏覽器(例如Chrome,Firefox,Opera和IE10)中運行。 這是一個聰明的建筑技巧,可以產(chǎn)生占用很少內(nèi)存的非常輕量級的網(wǎng)站。

地獄

Inferno是另一個框架,旨在執(zhí)行React的大部分工作,但下載量較小,運行時間更快。 它通過放棄復(fù)雜的綜合事件機制,而只專注于最基本的事件(如onClick)來實現(xiàn)上述目標 。 該API的許多其他部分都是相似的(如果不是相同的話),如果不需要事件優(yōu)化層,則使代碼移入相對簡單。

事前

最小的React后代之一是Preact ,它提供了大多數(shù)最有價值的功能,例如虛擬DOM和復(fù)雜的組件,但剝奪了合成事件處理程序和一些props繼承。 盡管Inferno嘗試僅實現(xiàn)最重要的事件(如onClick ,但Preact不會嘗試對事件做任何事情,而使您只能依賴瀏覽器的本機addEventListener 。 排除功能并沒有增加太多(他們認為)的是如何使下載量變得更小。 這有點折衷,因為基準測試表明Preact比Inferno慢一些。 當然,您的應(yīng)用程序可能會有所不同,并且里程可能會有所不同。 如果您確實需要與React的純粹兼容性,甚至還有一個庫( preact-compat )可以解決構(gòu)建期間的大多數(shù)問題。

哈皮

許多框架合而為一。 Hapi不僅是插件的集合,還包含幾十個代碼位,您可以根據(jù)需要將其混合到堆棧中。 身份驗證,授權(quán)和日志記錄是繁瑣的工作,可以通過許多選項解決。 如果您要構(gòu)建一個包含API的微服務(wù)架構(gòu),那么標準化的Swagger插件將自動從您的基本代碼生成Swagger文檔。

考阿

有時,您需要一個相當復(fù)雜的例程集合,這些例程可以處理傳入的請求并將其轉(zhuǎn)換為多個更改,其中一些操作很復(fù)雜。 Koa旨在使所有這些工作的組織變得更加簡單。 它的秘密在于,它將通常控制JavaScript的回調(diào)函數(shù)轉(zhuǎn)變?yōu)橐唤M異步函數(shù),這些異步函數(shù)將在適當?shù)臅r候觸發(fā)。 嵌套的意大利面條回調(diào)堆棧變成了更干凈的東西。

降低服務(wù)器復(fù)雜性的另一種選擇來自Nest團隊,他們提供了一種架構(gòu),其中填充了控制器,管道和提供程序,并提供了一些防護,攔截器和異常過濾器以保持秩序。 該框架是現(xiàn)代的,隨時可以從一開始就處理GraphQL和微服務(wù)請求。

Drupal,WordPress和Rails

這些天來,用JavaScript內(nèi)置并在Node.js之上運行的框架充斥著Web開發(fā)世界的心理中心。 但是,如果忽略上一代基于PHP的上一代,這可能是一個錯誤,該基礎(chǔ)比以往任何時候都快,而且還具有像JavaScript這樣的即時編譯器。 Ruby及其Rails框架繼續(xù)充當堅如磐石的網(wǎng)站的基石。

經(jīng)過十多年的不斷發(fā)展和努力,上一代人備受打擊,并且經(jīng)受了考驗。 有經(jīng)驗豐富的設(shè)計師可以為應(yīng)用程序制作主題和外觀。 很有可能有人已經(jīng)用您需要的功能構(gòu)建了模塊。 因此,在探索一個聰明的Node.js框架之前,請考慮其中一項舊有的東西是否已經(jīng)可以做很多甚至不需要的事情。

香草JS

您可能會認為這是對“皇帝的新裝”的刻薄挖掘或諷刺,但很難與它的成功爭論。 Vanilla JS是一個自吹自that的網(wǎng)站,其網(wǎng)站使用的網(wǎng)站數(shù)量超過了“ jQuery,Prototype JS,MooTools,YUI和Google Web Toolkit的總和 。” 考慮到j(luò)Query的泛濫,這可能是正確的,也可能不是正確的,但讓我們笑一笑。 該站點還帶有一個可愛的小選擇器,使您可以將不同組件的自定義歸檔捆綁在一起,例如Math,DOM,閉包或正則表達式。 無論您選擇什么,結(jié)果都是令人難以置信的零字節(jié)長。 嘗試擊敗那個!

開玩笑的意思是,有時僅使用JavaScript中的一些標準元素并跳過多余的部分是有道理的。 諸如jQuery或React之類的庫和框架之所以開始,部分是由于瀏覽器之間的瘋狂差異。 由于標準化,許多差異已經(jīng)消失了。

當然,香草JS支持者不會面對這樣的事實: $()類的速記函數(shù)不僅方便,而且還節(jié)省了我們自己代碼中的空間。 但是,如果您只是偶爾使用document.getElementById ,則可能無關(guān)緊要。 如果您只是要在網(wǎng)頁上添加一些功能,而這些功能將做一些基本的事情,那么純凈的原始JavaScript可能是您最快的框架。

From: https://www.infoworld.com/article/3300156/15-great-alternatives-to-react-angular-and-vue.html

總結(jié)

以上是生活随笔為你收集整理的React,Angular和Vue的15种绝佳替代品的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。