2016-06-08 57 views
0

我在系統生物學實驗室工作。包括我自己在內的每個人都是研究人員,他們沒有時間或傾向於網絡開發。但以前的實驗室成員使用React和Redux構建了一個漂亮的網站。關鍵是我們可以維護這個網站幾年,並且不同的研究人員能夠每週更新其內容。如何簡化使用React和Redux構建的網站?

我們的問題是,網站太複雜,無法更新。例如,要添加新聞報道,必須有人安裝所有節點模塊,瞭解如何調試JSX編譯錯誤,創建Story組件並將其導入NewsStory視圖,並重新部署節點服務器。我現在可以管理這個,但很快就要離開了;我們擔心每個新維護者都必須學習React和Redux才能更新站點。

這是我的問題:有沒有React設計模式來簡化更新基本上是靜態網站的內容?例如,我使用Angular構建了另一個實驗室網站,如果有人想更新新聞報道,他們只需將新的JSON對象添加到NewsController,然後通過FTP服務器上傳修改後的JavaScript文件。這個工作流程對於實驗室中的大多數人來說更容易。

+0

當然可以在反應中寫一個cms。但這不是你的同事所做的。爲任務使用正確的工具。 Angular也不會給你一個cms。這聽起來像WordPress的工作給我。 –

+0

我同意以前的評論。另外,根據你的描述,這聽起來像是你做錯了:故事組件應該是一個模塊,只關心_displaying_一些內容,而不是內容本身。因此,添加一個新的故事來顯示新的內容聽起來不對。特別是因爲你有Redux。 –

+0

絕對做錯了。我在問是否可以挽救該網站,例如通過以某種方式簡化React設計模式,例如不移植到WordPress。角度數據控制器。 – gwg

回答

1

從某種意義上說,Redux商店是您的Angular數據控制器。您可以在Redux/React網站中實施您在Angular中使用的相同流程。

使數據(例如故事)傳遞到故事組件以顯示。看看這個http://redux.js.org/docs/basics/Reducers.html

但是,如果您沒有足夠的興趣/資源來學習前端開發,那麼您可能會更喜歡Word Press等。

2

React是一個使複雜的UI更容易維護的工具。由Facebook團隊創建並基本上覆制了Redux項目的流量架構是一種簡化組件之間複雜狀態的方式,因爲React應用程序的複雜性增長。

聽起來好像你們選擇React時選擇了柵欄,因爲它可能不需要簡單的CMS類型的網站。有一點可以說是保持簡單,使用React for一個WordPress的CMS類型的網站可能不會簡單。我建議Django提供簡單的CMS解決方案,以便輕鬆集成認證管理,特別是因爲Python在生物學領域是一個相對普遍的選擇。

這讓我想起昨天與我分享的一個有趣的,有點真實的推特。 https://twitter.com/iamdevloper/status/517616294909464576

+0

我很欣賞這個解釋,但我實際上要求的解決方案不需要重建網站。 FWIW,我以前是一名Web開發人員,並且很樂意開發這個網站。兩個月後,我很不舒服地把它交給我的同事。 – gwg

1

希望Story組件可以做得足夠通用來呈現任何類型的故事數據。

如果是這樣,這裏有一個簡單的方法來處理它。在NewsStory組件的componentDidMount()生命週期方法中,從希望顯示的服務器獲取(使用axios,superagent或fetch)所有故事(作爲json對象的數組),並將它們保存在組件的狀態中。然後在NewsStoryrender()方法中,在狀態數組上映射以呈現每個故事對象的Story組件(將每個故事作爲道具傳遞到故事組件中)。

另一半是故事的CRUD用戶界面。或者只是像使用Angular應用程序一樣手動維護json。

相關問題