如何看待 svelte 這個前端框架?

時間 2021-05-06 20:00:22

1樓:NidhoggDJoking

Vue的快捷與原生完美結合,加上未來webgl的普及對開發者提供一種不錯的體驗,輕量級框架對大型專案的效能就有待觀察了,其次是生態還遠遠沒有達到主流框架的程度,不過未來可期。

PS:angular是時候下來了svelte上位。

2樓:rz1900

看起來很誘人,但是包體積和頁面區域性更新帶來的提速使用者幾乎感知不到;響應式是好東西,問題是VUE也有,React + Mobx也能實現;

模板語法從ASP, JSP而來,將JS和HTML混合的方式必然造成像VUE一樣API較多,開發者需要小心翼翼去糅合這2種元素, Typescript支援不夠好;React從發布以來變了很多,但就是JSX沒有變, 原因就在於JSX讓開發者使用JS原生語法,html標籤屬性無限接近原生(全小寫改為駝峰即可)而且Typescript百分百覆蓋. 比如你可以使用Array.prototype.

map來進行迴圈,短路求值和三元運算子來做if else操作. 由於是單向資料流連bind都省了, hook的到來API就更少了.

換句話說,當前生態下,初級開發者會選擇VUE上手, 中級會基於喜好選擇VUE或者React. 實在沒看見Svelet的市場,當然體驗一下還是很好玩的,回過頭來會對VUE或者React有更深的理解

3樓:彭亞倫

前面很多答案已經說的七七八八了,由於這段時間體驗了一下這個框架,寫了幾個小專案測試; 因此我大致說下感受。

第一是語法獨特;看起來像Vue,其實跟Vue差別挺大; 框架功能是比較整齊的,但是語法上,如果你不熟悉作者Rich Harris的之前的乙個框架 Ractive,那麼這個上手來說不會很快,但是優勢是,3.0版之後,官網提供了乙個基於codeMirror的REPL教程,跟著走一遍,基本就差不多了。

第二, 如果熟悉了核心的幾個語法,寫起來還是挺爽的;其簡潔性真的是近幾年框架裡面最舒服的,這裡再次安利Svelte的REPL開發模式,我在官方的基礎上修改了一下,加上了hint提示功能,可以說其體驗真的可以媲美Python的Jupyter Notebook,而且語法錯誤、typo等實時提示,真是爽到沒朋友

第三, Svelte是基於Rollup的編譯框架,最終build出來的bundle真的很小;效能也相當好。這裡有個對比測試可以參考。

leancloud:2019 前端框架對比及評測

總體來說,這個框架真心不錯, 國外有人稱讚它是「The Most Beautiful Framework」; 作者Rich Harris對這個框架信心十足,自認為是真正的「React」的框架, 油管上有他在2019全球前端開發大會上的演講,題目叫「Rethinking Reactivity」,一股子衝著React來的意思,哈哈。

不過目前來說,Svelte能否承擔起大型專案工程,這點還很難說;畢竟我司手頭也沒那麼大工程去試驗,so,留待觀察吧。

另外,我個人不建議小白去碰這個框架,如果是新手,建議從Vue開始;拿農藥裡的射手英雄做比喻的話,

Vue相當於后羿魯班,上手簡單明快,小白萌新只會平A的也可以上手,要玩的好那必須要有一定的意識,上限是有天花板的,而且最好是帶上乙個輔助配合—— Vuex,Vue-router等。

React相當於百里守約,看起來好玩,其實對操作者的要求挺高的,會玩的能玩出天際,不會的基本就是不會,萌新想要玩的動,需要比較多時間的練習;用起來還比較吃隊友(社群外掛程式)

Svelte,相當於公孫離,身闆脆弱(峽谷血量最低),但是異常靈活 ,能隨時秀個五殺,你還沾不到她衣邊;但門檻很高,適合高手。

4樓:伊撒爾

如果不仔細看,還以為是另乙個vue,然而並不是

svelte代表了前端框架的另乙個正規化

其實就是這樣,前端框架無非就兩個層面:runtime和compiler

以react為主導的,immutable方向,通過在runtime層大力墾荒,找到可以使用演算法的地方,發掘runtime的最大潛力

以svelte為主導的,在compiler層動手術,找到了可以使用演算法的地方,發掘compiler的最大潛力

至於vue,它是這兩者的結合,將vdom拿來,是為了在runtime層開拓一環,而template的編譯,又是在compiler層做,所以 vue 本身其實是乙個兩個層面都有,但又都不那麼執著的框架

所以vue平時談的最多的是業務和權衡,它在這方面確實有的一說

但是我不同意vue方面的一些說法:

1. svelte 注定和 vdom 絕緣?

答案是不需要 vdom,想要跨端非常簡單,寫編譯器即可,這就是他們的方向,事實上類似的框架如 taro,nanachi,ivy等,都完美詮釋這個方向

當然,同樣的,沒有了 diff patch,效能的好壞體現在編譯器演算法和dom操作時的計算演算法而不是 vdom diff 演算法

2. svelte 的更新策略注定要使用 SCU 或 svelte 不接近 js 表達語義

答案是只要想,編譯器就可以無所不能,這些表明的東西都不是關鍵問題

最後關於這兩個正規化,其實作為框架作者,專一的追逐某乙個正規化才是主流,因為這樣才有研究的意義

正規化的結合是耍賴皮,但也不是不可以,如果是從業務考慮,肯定是結合由於專注

但是我個人還是比較喜歡在專一正規化裡研究,進步,畢竟,業務收益對我而言,價值不大

所以綜上所述,svelte是個好的框架,我搞完fre(runtime層),可能下一步就要研究svelte啦

如何看待現在前端圈一邊強調重視基礎摒棄框架腳手架一邊對招聘新人要求react vue ng?

dboy 大公司分團隊,大公司的團隊未必是好技術團隊,強調基礎的是好團隊的概率更大。框架的作用是把開發基本功能的難度降低到只需要 填空 的地步,這是框架提供的功能的好處,資料繫結,元件機制等等。但框架不會告訴你什麼是好的元件設計,抽象有沒有側漏,可用性好不好,好不好維護,效能如何,從架構到區域性程式...

如何看待朱一龍白宇同框?

沐紅羽 恭喜白素人追星成功,為了和朱一龍有一張合照,這位終於從堵廁所上公升到有鏡頭了。不過有啥用呢,我家新來的粉完全不知道他是誰,被我們科普後就決定不看他家的戲了。嘖嘖嘖,有的人呢 觀眾緣這種東西,不是你和誰一起演戲被人帶飛的!而是一部一部戲演出來的。態度決定高度! 小耿同學 既然提到了就說一下,朱...

如何看待 Three js WebGL 等前端 3D 技術?

CHEN 看好webgl發展,隨著手機效能越來越好,體驗也將被大眾接受,現在移動端效果越來越好,新作的乙個小案例,大家上手試試http www. 追逐者 廢話不說看實際效果 隨著5G的普及推廣,前端3D渲染必定成為趨勢這個我實現的乙個小demo 追逐者 WebGL實現3d渲染 還有大牛的實現的應用,...