2016-08-12 62 views
0

使用redux處理適度複雜的反應應用程序。我們目前擁有一個我們在生產中滿意的版本,並且正在爲本地運行的應用程序版本開發一個管理區域。這個本地版本將具有一些基本的CRUD功能。我目前正在評估最佳方式,讓CRUD內容保留在生產版本之外。從生產應用程序中分離Intranet CRUD /管理面板

我最舒服的就是有一個Makefile,它有sed刪除我不想在我的生產版本中。例如任何管理路線,減速器添加等,但我覺得有更好的方法。從去年的這個時候開始,我可能會在鍋爐板上遇到一些東西,因爲我傾瀉了數十塊來感受工作方式。也許它是在一個webpack配置?我不記得了。


讓我們來看一個簡單的例子。

  1. 在REDX中我有一個文檔模塊。

  2. 這個模塊我可以刪除一個文件。但在製作中我只想閱讀信息。爲了減少包的大小,我不需要創建,更新或刪除。這隻需要在本地Intranet上運行的版本中進行。

在這一點上我不能確定如何進行


我覺得選擇有限

  1. 創建兩個分支。細緻合併任何新的生產功能集成到我的本地分行(很不理想)

  2. 創建兩個文件模塊(document_readdocument_admin),僅用於讀取,而另一個用於休息。

    • 擁有的WebPack配置在編譯的時候會忽略這個模塊
    • 有運行這個本地版本的document_admin模塊中增加了
    • 有條件文檔容器中添加管理員分量的第二combineReducers功能
    • 有第二個路由(react-router)文件||有條件地添加與document_admin相關的任何路線,或者作爲未來的模塊,允許經理在提交到生產前審覈用戶完成的工作。
  3. ?? ??

在這一點上,兩個似乎是明顯的贏家。我只是不禁感到,像我缺少一個令人難以置信的明顯解決方案

回答

1

我想說兩個不同的webpack配置去只打包每個應用程序的必要資源。

另一個選擇(如果你喜歡它有更多的分離)將使用git子模塊(大概你使用的是git而不是其他vcs),你會有兩個倉庫,每個倉庫一個,共享一些核心代碼(第三個回購,從「應用程序」庫作爲子模塊鏈接)。

+0

我注意到我從來沒有接受過這個問題的答案。雖然我沒有使用你的方法,但我很感謝你試圖回答我的問題。我以我最舒服的方式去了。我有一個Make文件,可以根據需要配置一些shell腳本。 – matchew