ReactJS 真的好嗎?

時間 2021-05-31 00:50:24

1樓:小豬

reactjs個人覺得還是蠻好用的,只是虛擬dom的寫法有點另類,初學者在開始的時候比較難以接受,習慣了就好了,效能方面還是不錯的,至少也是vue的先驅,自己也寫了乙個react的二次封裝框架,將虛擬dom部分拆分到了html模版中了, 有興趣的也可以了解下 easyme

2樓:Riki

多年來,web技術的進步是很小的

http, 協議是低效的

html 是基於囉嗦的xml,自然囉嗦

js 語言很另類

css 是一種硬編碼

無論什麼框架,上面這些都是基礎,自從nodejs的出現,上面這些問題被web開發者們關注了,於是對於前端的各種改造就沒停止過,ts,cs,es6, less, sass, jade ...還在繼續

也許,nodejs的最大價值在於,它讓js走出瀏覽器,這意味著在其它領域一定會形成對比,對比這下,這個多年都不思進取的語言捉襟見肘,引發了改進潮

有點扯遠,說說樓主的問題,react 所謂的全是元件,元件套元件,這個windows程式設計的概念是一樣的,都是視窗,視窗套視窗,這個概念微軟早就有了,我能說所謂的元件是一種倒退嗎

GUI程式設計,做過的人都知道,比做網頁要難的多,所以GUI一般庫都會有 html 元件,因為很複雜的任務用網頁實現會變得很簡單,自從QT有了 QML, 就更像網頁了,如果說做網頁非要模仿GUI,我想你走遠了

網頁模仿GUI,理由是感覺很高階,從此脫離草根

GUI模仿網頁,理由是讓問題變得更簡單,從此讓生活變得更輕鬆

So 我的觀點是,react 或類似的框架是把簡單問題複雜化,已經走遠

3樓:

Angular 2 的開發效率個人感覺更高一些。。。

以下是正題,不過只是個人看法,請勿當真。

首先,應用變大之後就是 everything would mess up, 這個時候狀態管理是乙個很大的問題。

然而 React 並不能解決這個問題。很多時候即使 leader 決定採用 React/Redux 的乙個技術棧,開發者,尤其是新手或者不熟悉相應技術的情況下,也會把各種東西放到 state 裡面造成狀態管理混亂,並且造成大量額外請求。

另外,推薦的架構也會造成網路請求相關問題難以除錯等同樣嚴重的問題。

Update: 還有乙個問題是 shouldComponentUpdate(). 有些互動操作的時候你必須在使用者察覺前立刻更新,但不能實時更新否則會很卡。

所以你必須 requestAnimationFrame 後強制渲染,並且在這裡 return false.

還有第三方生態也是乙個坑。例如拖放庫 React DND, API 簡直喪心病狂。然後希望拖放功能相容 IE 8/9?

Sorry 你需要自己用 (API 優雅太多的) jQuery UI 再寫乙個極可能 bugs 超多的 backend.

Finally again, React ain』t no functional programming.

4樓:win1988

說實話,還是很不錯,用react接外包還是很能要上價的:),第乙個專案已在進行,坑確實不少但還是能看到了希望。畢竟做好了,還是可以當案例秀秀的。

建議各位還是下決心開始用吧。慢慢用有感覺啦。但react native還是建議不要用啦,已經基本放棄。

5樓:bluetrees

說的都挺好的。

不怕麻煩的話就把整個頁面需要的元素和布局都寫成乙個大大的json物件,然後隨便弄個啥啥解析這個json成dom。

好像ReactJs和上面這個本質上差不多,關鍵弄了奇怪的JSX語法吧,寫json太累,而且不是順序建立的模式不符合程式設計師習慣,程式設計師習慣於從組織程式結構的角度來描述乙個物件的外觀,所以就需要這麼個jsx來幫助程式設計師一步一步的構造物件外觀,而不是定義物件外觀。

6樓:body no

新手入門推薦一下這個框架

GitHub - bodyno/react-starter-kit: 完美使用 React, Redux, and React-Router!

絕對十分適合新手

下下來執行一下就知道所在react redux route 的流程了真的感覺不錯

7樓:

好與不好要看場景。像fb這種乙個產品很多團隊精耕細作就很好,元件化,沒一小塊都有明確介面。但對於希望快速實現乙個系統很多功能的團隊,react未必是極好的選擇,這時候更傾向於不做元件化,因為重用的需求和維護成本都還不清楚。

8樓:

沒用過react ,但是用過另外一款開發平台,正好最近有大牛寫了一篇帖子比較這倆的,可以看看:React Native與ExMobi技術路線探索-Android,Facebook,移動應用,開發平台,成熟度

9樓:馬芸

元件化是React開發的乙個優勢,對提公升團隊開發效率很有幫助。至於設計方面的問題,乙個合格的設計師在設計的時候也應該考慮頁面的元件化,這樣可以減少開發人員的工作量。

10樓:程睿

Webpack下,redux + react hot loader,簡直爽到高潮。其實吧,談框架很屌絲,做出成功的產品賺錢才是硬道理。

11樓:王賢斌

用好乙個工具的前提是對這個工具的理解,以及理解後,針對自己有用部分的提取和無用部分的處理。

別人都在說這個東西好,並不一定適合你。

乙個規模不大的專案,到處去講抽象,到處都是過度的設計是沒有意義的。

對於乙個規模很大的專案,沒有抽象,沒有Component,也是絕對玩不下去的。專案規模的擴大,必然會導致開發成本的提高,其中複雜度,開發周期中,一些抽象,只是想要降低整體系統的複雜度,這個開發周期不一定會縮短,當然整體系統的複雜度降低了,維護成本就大大降低了。

反過來說,小專案,要把這些落實起來,卻要消耗很多額外的工作量。。。是很多很多額外的工作量。。。

so,好用不好用還是要看情景的。

12樓:遊真UZEN

題主的感覺是對的。 元件方案技術上的方便宜用,與人力上能scalable是相互衝突的。乙個元件包含了 JS、HTML 和 CSS,那麼他的擴充套件修改就不是那麼容易的,特別是對於只懂 HTML 和 CSS 的初階開發者或者是設計師、懂一點點程式設計的營銷人員等等。

所以在雲信這樣的諮詢公司,我選用了 ractive。

13樓:可可

Angular2 也是以元件為核心的,和React異曲同工,代表業界乙個大的趨勢,相信也會吸取React的虛擬DOM的優點的……

題主可以先學習一下Angular2,我覺得比React要清楚合理的多,當然React只是乙個View層的方案,具體使用肯定少不了M和V層的配合,單是用React是不容易做好單頁面應用的。

14樓:李家良

上面的同學,幾乎都在闡述元件化的想法,都很為詳細。我說個額外的。

對於React,不要僅僅因為它實現元件化的組織方式前沿而去使用,能不能花點時間考慮一下它的核心 - 虛擬DOM 對專案的可用性。

更多地去考慮引入這個框架能解決什麼痛點,引入這個也有什麼痛點,兩者之間去取捨。

15樓:

在富應用開發中,跟Angular完全沒得比,在同等熟練條件下,Angular開發效率=五倍React=三倍backbone=十倍jquery,然而虛擬dom並沒有什麼亂用,二十一世紀,效率為王,Angular萬歲,它代表了前端最先進的生產力,代表了前端先進文化的前進方向,代表了最廣大前端的根本利益,然而一切抄襲angular造輪子的技術都將被歷史的車輪碾壓,粉身碎骨。。

從我03年初三接觸網頁開發(06年才有的前端)至今,在我看來angular是前端真正意義上的第一框架,而react只能算乙個庫,框架的核心就是制定一種規範,形成一種共識,讓大家可以無腦輸出業務,很多人吐槽是不是太重量級了,我這個人比較務實,我特別喜歡重量級的東西,不管是框架還是IDE(webstorm,vs),別人提供了強大而豐富的服務和規範,提高我的生產效率,我何樂而不為。

React js有哪些設計缺陷?

Shulamith 作為編譯結果 執行時而言,react的性質是比較不壞的,因為它基本上啥都不幹 但是也不真的啥都不幹,總有一天會撞上合成事件的牆。尤其迷惑的是react還沒提供監聽document上的合成事件的api,所以會出現要處理兩種event的狀況 作為編譯結果 執行時而言,它不treesh...

ReactJs控制項庫哪個比較好?

林嵐 最開始接觸的是螞蟻的ant design,因為用作內部 管理後台 專案,暫時沒有發現過多的bug,用的挺順手,結合了設計語言的元件,互動狠漂亮。如果你想讓你的後台美麗一些,就用它吧 soar 我靜哥寫的react ui,已經更新到第七版,git過千star。 呂立青 JimmyLv Eleme...

學醫真的好嗎

夢中人 我是真的喜歡醫學才去讀的,一腔熱血報臨床醫學,但最後事與願違。對於有這樣熱情的人來說,學醫當然好啊,你會有很多成就感,你會學到非常非常多的知識,但你的辛苦和辛酸有時候只能被醫學生或者醫生理解,畢竟非醫學生無法設身處地。如果沒有這樣的熱情,只是想有乙份體面穩定的工作或者去撈金,那麼大可不必選擇...