欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

前端開發(fā)使用Ant Design項(xiàng)目評價

 更新時間:2022年08月12日 10:29:29   作者:欲三更  
這篇文章主要為大家介紹了前端開發(fā)使用Ant Design項(xiàng)目評價,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

好的方面

作為前端開發(fā)使用 Ant Design 1年多了,想說幾句。

先說好的方面——

它提供的大量功能比較全面且UI風(fēng)格統(tǒng)一的組件,能幫助開發(fā)者快速搭建通用場景下的應(yīng)用界面。這大概是得益于螞蟻金服業(yè)務(wù)線上極為廣泛的應(yīng)用場景,驅(qū)動了 Ant Design 團(tuán)隊(duì)通過對使用情況的觀察匯總,整理出來了這么一個組件庫。他們的經(jīng)驗(yàn)積累如此之豐富,足以讓這個庫支持大部分其他前端開發(fā)者的需要。

其設(shè)計團(tuán)隊(duì)給出的設(shè)計規(guī)范相當(dāng)詳細(xì)且經(jīng)得起推敲,令許多其他團(tuán)隊(duì)獲益匪淺。

不好的方面

但我更想吐槽幾個不好的方面,都是針對其開發(fā)團(tuán)隊(duì)的——

  • 它“過于智能”,常常畫蛇添足。比如 Button 內(nèi)容為兩個漢字時會自動在其間加上空格分隔,比如表單驗(yàn)證消息模版中,如果不提供 %s ,它會自動將 %s 的對應(yīng)內(nèi)容添加到尾部,仿佛在說“你忘了寫 %s,我?guī)湍阕詣蛹由狭耍挥弥x我喲!”。于是我想要在某個表單字段展示“此處必填”消息的時候,就會被迫變成“此處必填 field-name”。
  • 維護(hù)者常常意氣用事。除了之前廣為人知的圣誕彩蛋事件,隨手翻閱一下該項(xiàng)目在 GitHub 的 issues ,就能看到類似的發(fā)言。“愛用用,不用gun”的交流方式,并不能幫助這個庫變得更好。

3. 部分組件設(shè)計不合理,且長期未進(jìn)行優(yōu)化。最顯著的是 Form 組件,使用過它的朋友一定體會過其 getFieldDecorator API 的微妙感覺以及 Form.create API 的詭異體驗(yàn)。甚至上面的截圖里也吐槽了 Form。值得一提的還有 Modal 組件,提供了一個 Modal.confirm 接口。讓我仿佛回到十年前那個寫 jQuery 的時代。維護(hù)者對 React 的掌握不夠純熟,對于一些深度 bug 甚至不能充分理解,比如 Upload 組件的這個 bug

4. TypeScript 支持欠佳。有的朋友可能會說,”這個庫明明有 TS 支持,在編輯器里也有自動提示,你不要亂黑“。我的意思是 Ant Design 的 TS 支持與它的量級不協(xié)調(diào)。這個 Star 數(shù)萬的庫,對于范型等TS的強(qiáng)力功能發(fā)揮甚少,還常常在諸如應(yīng)該寫為 'a' | 'b' | 'c' 的地方看到一個粗暴的 string ,甚至 any。

5. 社區(qū)反哺困難。讀過源碼的朋友應(yīng)該都發(fā)現(xiàn)了,antd 之下還有一套 rc-*的組件庫,一個功能簡單的 antd 組件,往往需要通過極為冗長的代碼來實(shí)現(xiàn),當(dāng)你讀到尾部,又發(fā)現(xiàn)它用了一個來自 rc-* 的組件。如此種種,使得當(dāng)使用者想幫助修復(fù)一些簡單的bug時,會望而卻步。

更新@2020

剛才因?yàn)橐S護(hù)一個使用了 antd 的老項(xiàng)目去官網(wǎng)看文檔,有些新發(fā)現(xiàn)。

剛打開首頁時大部分交互都沒有反饋(默認(rèn)進(jìn)入最新的 4.0 版,而我想切換到 3.x 版本的,點(diǎn)擊沒反應(yīng)),很納悶。打開 DevTools 看到某個巨大的 JS 仍在加載,最終花了我將近 2 分鐘才好。聽說 Ant Design - The world's second most popular React UI framework 是托管在 GitHub pages 的,大概是流量太大被限速了吧。當(dāng)我準(zhǔn)備瀏覽一番,卻發(fā)現(xiàn)非常卡頓。通過 FPS meter 發(fā)現(xiàn) FPS 只有 10~12,我那沉默已久的風(fēng)扇呼地一聲轉(zhuǎn)了起來,我猜是開發(fā)人員的電腦配置都比較好才沒發(fā)現(xiàn)這個問題。

單就新首頁的體驗(yàn)來說,有點(diǎn)差,不知道這次發(fā)布的 4.0 版本身變化有多大,是不是解決了我之前吐槽過的點(diǎn),改天研究一下再來更新。

更新@2022

沒想到上面的“改天”這一改就是700多天。最近終于有機(jī)會使用了 Ant Design 4,對照原回答里的問題更新一下感受。

  • 在最近的使用中沒有遇到“過于智能”的問題,但最近的使用深度也不如以往,基本只用到最常規(guī)最基礎(chǔ)的場景,希望維護(hù)團(tuán)隊(duì)是真的已經(jīng)避免了這個問題。
  • 現(xiàn)在重新審視 @afc163 在原回答截圖中的回復(fù),我似乎比之前更能理解他的本意一些——大概是勸用戶改變使用方式,默認(rèn)了 Ant Design 的 Form 在設(shè)計上略有缺憾的意思。但我還是堅持認(rèn)為這個表述方式不能令我滿意。我最近因?yàn)椴檎乙恍┦褂蒙系膯栴},有去翻 GitHub issue,沒有翻到比較新的回復(fù)。希望是改善了吧。
  • 有看到 Form 組件已經(jīng)被優(yōu)化過了,粗看示例代碼里沒再看到 getFieldDecorator,但總體上感覺還是不那么美好,比較難受的是看到了通過對 form 的 ref 引用來進(jìn)行數(shù)據(jù)操作。然后 Upload 組件的問題似乎還是存在的?
  • TypeScript 支持改善了很多,現(xiàn)在 Ant Design 比較全面地使用 TypeScript 進(jìn)行了實(shí)現(xiàn)。補(bǔ)全效果是及格的,枚舉類型希望能更多一些,目前還是太多 string,估計是受限于更底層的 rc-* 的 TS 化進(jìn)度。
  • 社區(qū)反哺依舊很困難,不知道這個問題還要拖累這個庫多久?

另外這次淺嘗過程中發(fā)現(xiàn)一個挺無語的小問題——我試著去調(diào)整 Tooltip 的動效,通過類型提示得知與動效相關(guān)的 transition 的 API 在底層的 rc-tooltip 已經(jīng)被廢棄了,應(yīng)該用新的 motion API,但是上層的 Tooltip 又幾乎寫死了 motion API,用戶只能用 transitionName 有限地調(diào)整 motion。

Tooltip 直接使用 rc-tooltip 的 props type

但這里不接受用戶傳入的 `motion` prop,會強(qiáng)制用 transitionName 生成一個 motion

哎,希望 v5 能更好吧……

以上就是前端開發(fā)使用Ant Design項(xiàng)目評價的詳細(xì)內(nèi)容,更多關(guān)于前端開發(fā)Ant Design的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • React函數(shù)式組件Hook中的useState函數(shù)的詳細(xì)解析

    React函數(shù)式組件Hook中的useState函數(shù)的詳細(xì)解析

    Hook 就是 JavaScript 函數(shù),這個函數(shù)可以幫助你鉤入(hook into) React State以及生命周期等特性,這篇文章主要介紹了React Hook useState函數(shù)的詳細(xì)解析的相關(guān)資料,需要的朋友可以參考下
    2022-10-10
  • React18中請求數(shù)據(jù)的官方姿勢適用其他框架

    React18中請求數(shù)據(jù)的官方姿勢適用其他框架

    這篇文章主要為大家介紹了官方回答在React18中請求數(shù)據(jù)的正確姿勢詳解,同樣也適用其他框架,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-07-07
  • React之使用useState異步刷新的問題

    React之使用useState異步刷新的問題

    這篇文章主要介紹了React之使用useState異步刷新的問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • React組件化的一些額外知識點(diǎn)補(bǔ)充

    React組件化的一些額外知識點(diǎn)補(bǔ)充

    React是一個用于構(gòu)建用戶界面的JavaScript庫,下面這篇文章主要給大家介紹了關(guān)于React組件化的一些額外知識點(diǎn),文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-10-10
  • ReactRouterV6如何獲取當(dāng)前路由參數(shù)

    ReactRouterV6如何獲取當(dāng)前路由參數(shù)

    這篇文章主要介紹了ReactRouterV6如何獲取當(dāng)前路由參數(shù)問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • react中如何使用監(jiān)聽

    react中如何使用監(jiān)聽

    在 React 中,您可以使用?addEventListener?函數(shù)來監(jiān)聽事件,本文通過實(shí)例代碼給大家介紹react中如何使用監(jiān)聽,感興趣的朋友跟隨小編一起看看吧
    2023-10-10
  • react用Redux中央倉庫實(shí)現(xiàn)一個todolist

    react用Redux中央倉庫實(shí)現(xiàn)一個todolist

    這篇文章主要為大家詳細(xì)介紹了react用Redux中央倉庫實(shí)現(xiàn)一個todolist,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-09-09
  • 深入淺析React中diff算法

    深入淺析React中diff算法

    React 最為核心的就是 Virtual DOM 和 Diff 算法,diff算法的基礎(chǔ)是Virtual DOM,接下來通過本文給大家介紹React中diff算法的相關(guān)知識,對React中diff算法感興趣的朋友跟隨小編一起學(xué)習(xí)下吧
    2021-05-05
  • 代碼解析React中setState同步和異步問題

    代碼解析React中setState同步和異步問題

    前端框架從MVC過渡到MVVM。從DOM操作到數(shù)據(jù)驅(qū)動,一直在不斷的進(jìn)步著,本文給大家介紹React中setState同步和異步問題,感興趣的朋友一起看看吧
    2021-06-06
  • React組件的生命周期詳解

    React組件的生命周期詳解

    React是用于構(gòu)建用戶界面的JavaScript庫。本文詳細(xì)講解了React的生命周期,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03

最新評論