如何看待知乎使用 React 重構?

知乎個人主頁,問題詳情頁,Live 都是 React 重寫的,估計後續其他頁面都會用 React 重構,出於什麼原因選擇 React 呢?為什麼不選擇用 Vue 呢?相比 Vue,使用 React 重構對知乎的好處和壞處是什麼?


-

為什麼不把編輯器做好呢,不要專挑軟柿子捏哇,手動doge

-


後端啥時候用go重寫?


專欄貌似用的angularjs吧,現在用react重構,我好擔心 @徐飛 叔叔會不會離開知乎(手動滑稽.gif),民工叔不要走,我們也期待你的 rxjs 乾貨呢。


我覺得大家想太多了,就是為了兼容IE8而已


知乎的數據體量和產品需求催生了技術團隊選型react。

我從下面兩方面論述我的觀點:

1、react 和vue 各自更擅長的場景和技術優劣勢。

2、知乎使用react相比用vue會有哪些收益。

關於第一點:

react和vue(1系列)在技術層面的擅長場景不同。

react非常靈活,純js邏輯控制渲染而自身完成js生成v-dom的映射。

react的關注點在v-dom。

開發者寫jsx可能各人有其獨特風格,

但是只要v-dom一致,

渲染到頁面就能保證view一致。

vue非常輕量,它解決問題的關注點在於 vue-component的數據視圖同步。

由於vue的compile依賴指令和dom結構,

在靈活性上會稍遜於react,

在多人協作的場景中,雖然可以按照components拆分工作量,在實施和維護上還是會因為dom的存在而產生較多溝通成本,

vue適合移動端,輕量而清爽。

關於第二點知乎選型react:

對於知乎而言,諸如ws推送和xhr下拉刷新是主要的數據更新來源。

除了個人的信息推送外,大部分的界面都是增量顯示而不是更新展示,所以單從數據的複雜和界面更新度來說,場景並沒有到很複雜的程度。

我覺得選型react,

一方面是為了今後產品迭代的時候,開發可以減少歷史包袱,優化多人協作模式,降低開發成本。

第二個方面是擁抱變化。

藉助react靈活先進的技術理念和成熟的生態為知乎開拓新的產品線保駕護航。

最後說一點,react和vue都是非常優秀的框架。

在數據交互相對複雜的場景,正如我在第一點所述的那樣,react相比vue1更能勝任。

vue2目前也已經引入了類似jsx的理念,相信等vue2在成熟創新後,可能在不同的業務場景技術選型上,討論又會是另一番場景


後端能換 Haskell + Exilir 嗎,聽說這兩是全民語言了,招人方便。


APP左劃返回能改回來嗎?邊緣左劃太難了。


"如何看待"這個詞在知乎出現的次數太多的,一看我到這個題目,第一感覺就會"感性大於理性". 所以,建議以後提問的正確姿勢是:"為什麼會選擇React"...嗯嗯,細細品味下"看待"


主要是 Angular 2 的跳涯式升級


確定不是誰拍了個腦袋?


多庫並存,莫名其妙消耗流量費。

closure系高逼格,Google那麼複雜的頁面也能hold住,換成React感覺莫名其妙。

估計就是換了個leader,不換技術體系,怎麼能體現價值呢。


謝邀。

沒用過vue,那就不好說太多,但從前一陣子我做的一個調查來看,vue的得票率是最高的,因此我覺得使用vue應該也是很好的。

好像知乎之前是用NG 1,NG的集成度是比較高的,要駕馭特別是要自定義好就有不小難度,起手時很爽,用專則不易。

React方案流相對來講輕一些,性能也會高一些。

NG的開發模式更偏向傳統,搞個組件然後放到模板里用。React則反過來把模板代碼通過JSX形式來放到JS里去折騰。這也有個習慣和適應的問題在裡面。但說白了都是HTML、CSS和JS之間的關係,用jQuery啥的也是可以搞定的,咳咳咳……

為什麼知乎用React其實我也不知道。但恰好NG和React我也都有點了解,對兩者也沒有特殊偏好,就隨便說說。

Angular跟React兩個其實都是好東西,哪一個精通了都是不得了的事情。選那一個固然有理性因素,但隨大流、嘗嘗鮮等因素的存在也是有可能的。

其實我想說Backbone也是能解決問題的。


大概是玩 jQ 玩膩了。

學一波 React 為跳槽做準備。(誤)


Vue2和React現在共同點非常多,不過vuejs比react棧學習起來輕鬆很多,ng2比ng1坐飛機一樣的升級版本來說,直接升ng2和直接用react/vue2成本差不多。

我就想說,知乎的富文本就不能支持markdown嗎?


其實兩個框架都可以用,最終的選擇還是來自工程師的偏好。

如果我們公司的項目可以重新選框架,我們一定會投給vue,而不是react,可惜我們那個項目是14年開啟的,那時vue還沒成熟。


其實我更期待知乎後端用php重寫

還有,前端能別重構了嗎,把樣式恢復到上一版行不行,你們難道要走人人的老路。

//其實吧,知乎後端用php寫真的不見得是個好主意。

//給經常把我關小黑屋的管理員用的後台除外。


vue和react的選擇是一回事。我好奇的是為什麼知乎要重寫前端。

是現有技術架構無法實現新的需求?看前面回答說以前用的ng,那ng出現了無法繞過的坑?團隊招不到學得會ng/願意學ng的人了?總不會真的單純因為ng不如vue和react潮吧。

知乎前端現在連個簡單的編輯器還沒實現好,為什麼就要大規模換血?


期待後端用scala重構


其實我想知道用React 知乎 seo 怎麼搞?

用了服務端渲染了嗎?


Live 沒有重寫,Live 一開始就是用 React 寫的。


推薦閱讀:

前端面試官 怎麼問的問題都是 原理呢?
公司要求統一一套前端腳手架,該怎麼選擇?
React這樣整個全家桶真的好么?這麼碎片化會是以後前端框架的趨勢么?

TAG:前端開發 | React | Vuejs |