2016-03-04 68 views

回答

30

注:this stackoverflow post包含例子和代碼,可以幫助你很多。

這是一個經典的誤解。 Express將處理您的後端路線,而反應將處理前端路線。 您的React應用程序可能是一個SPA(單頁應用程序),這意味着您的服務器(快遞或其他)將不得不服務於index.html,並且反應將從這裏處理您的應用程序。這意味着React將評估路線並決定渲染哪個視圖。

因此,您必須確保當用戶像/accounts/me這樣的路線前進時,服務器會根據需要爲您的前端(反應)應用程序提供服務,但是像/api/users/me之類的應用程序將呈現數據。這只是一個例子。

「正常」的用法是使用express和應用程序(頁面和視圖)僅通過React處理您的數據(通過 API)。

如果您使用服務器渲染,它會變得更復雜一點。

在大多數情況下,是的,你將不得不使用兩者。

編輯:如果您的問題更具體地說明了您的使用情況以及您想要做什麼,那麼回答會更容易。編輯2:大多數情況下,服務於前端應用程序和API(數據)的服務器不是同一臺服務器,如果是,只需確保在某些路由到達服務器時發送應用程序即:/home,​​(顯然這裏沒有api路由)應該發送服務index.html作爲您的前端應用程序,React將負責確定要呈現的內容。

+0

感謝您的回答我有這種建築 – fandro

+0

您好,我在回答中添加了「編輯2」。這完全是關於理解單頁應用程序,以及當請求到達服務器時會發生什麼。 – Cohars

+0

好的非常感謝:) – fandro