原文作者:Jolyon Russ
本文編譯:胡子大哈翻譯原文:http://huziketang.com/blog/posts/detail?postId=58e83f01a58c240ae35bb8e1
英文連接:11 lessons learned as a React contractor
轉載請注明出處,保留原文鏈接以及作者信息
一開始在 React 路上摸爬滾打的時候,不知道該尋找些什么,但是這些年來,回頭總結經驗才發現,要找的已經在腦子里了。下面是我自己在學習 React 歷程的一些關鍵點,以及我的一些背景情況。
我已經寫了 18 年的代碼,其中 13 年是全職專業的老司機了; 其中 6 年時間都專注于 Flash 開發; 直到史蒂夫·喬布斯的公開信表示不支持 Flash; 我刷過 HTML,CSS 和 JS 這幾個技能點; 曾經在主流 JavaScript 框架的研究上糾結了很久,當時感覺它們把大量的邏輯都隱藏在了背后; 辭職開始外包生活,主要做原型; 看了很多 React Demo; 2015 年 10 月,正式開始 React 項目生涯并且愛上了它; 2016 年 1 月,改了我在 LinkedIn 上的 Title:React 開發者。接下來是我所總結的一些經驗,希望能對你有所幫助。
改變 React 組件行為依賴于你傳遞的 props,這是個很有用的功能。在項目初期就養成一個好的編程習慣對未來很有好處:創建一些通用組件,使其在其他地方也可以使用。
當你開始了項目以后,對于一個組件你可能會不斷地擴展這個組件的使用外延。一段時間以后你會發現,你會疲于修復 bug,在 A 場景下修復好以后,又發現在場景 B 和場景 C 下又發現了 bug。
我的建議:如果一個組合組件導致了 bug,那么把它分解成若干個簡單組件,即便代碼重復也值得。
只要你使用 React,就一定會用到開源軟件,不論是 React 核還是 1000 多個可用的 NPM 模塊。如果你發現了庫中有 bug,那就提 Issue 上去。更好的情況是,如果你 fix 了一個 bug,一定要提 Pull Request 把修復的代碼整合進去,因為使用這個庫并且遇到 bug 的并不只是你一個人,這樣做會使整個生態變得更好。
我的建議:回饋社區,即便你只是修正了文檔中的拼寫錯誤也好。
我知道這并不是一個常見的場景,但是我就遇到過,當我開始一個外包項目并且開始 build 的時候,發現有一些依賴編譯的包不存在。進而才發現實際上這個 React 是用于一個 Backbone 項目中的。在 Backbone 中實現 React 組件其實非常簡單,使用 Redux 可以在這兩個之間進行通信。它們之間的通信必須要通過 Browserify 或者 Webpack 編譯到一起才可以。
新聞熱點
疑難解答
圖片精選