2015-07-10 77 views
14

我正在尋找重寫一箇舊網站使用React.js爲我的前端框架和PHP的後端小東西我可能需要。React.js和PHP在一起?

我正在使用的服務器是IIS與Apache,但我有很少/沒有SSH訪問/能夠在機器上安裝的東西(即npm,節點等),所以我被限制使用PHP作爲一個後端(所以我不能建立/編譯我的React JSX serverside)。但是,難道我不能簡單地上傳/編譯我的反應文件到服務器嗎?我看過this,但我並不完全確定我需要它嗎?

基本上,我的問題是,是一起使用這兩個實用?我是否需要其他工具來完成此操作? (這個網站很可能很小。)

+0

如果該網站很小,爲什麼在VanillaJS的時候會使用React.js? –

+4

這不是*小*,我也想練習/加強我的React技能。 – cakesofwrath

+3

許多優秀的問題根據專家的經驗產生了一定程度的意見,但對這個問題的回答往往幾乎完全基於意見,而不是事實,參考或具體專業知識。我建議你找一個開發論壇(可能是[quora](http://www.quora.com/Computer-Programming?))來計算通用性。然後,當/如果您有特定的編碼問題,請回到StackOverflow,我們很樂意提供幫助。 –

回答

13

我已經簡單地使用過PHP和React(然後移動到同構React中)。使用PHP運行V8只在需要服務器端渲染(用於快速初始加載和簡單搜索引擎優化)時纔有用,但我沒有嘗試過,因此我不確定它是否足夠穩定/可靠。如果您不關心服務器端渲染,那麼您可以構建React應用程序並將其包含在您的PHP視圖中。

基本上,PHP視圖將用作佈局,並定義一個React容器元素,以便您的React應用程序可以引導它。

您還可以預先獲取PHP的React應用程序的初始數據,並以某種方式將它附加到您的PHP視圖。最簡單的方法是使用腳本塊將JSON序列化的數據分配給全局變量。另一種方法是定義元素並將JSON序列化的數據附加爲元素屬性,以避免出現全局性。無論採用哪種方式,您都可以讓Flux存儲引導程序的初始數據,以避免在應用程序加載之前必須點擊API。

+0

檢查https://github.com/reactjs/react-php-v8js如果你想服務器端反應渲染 –

+0

請回答這個問題! – HussienK