2

我想開始研究Angular或React,但是我很難在一分鐘時間找出它們適合的位置?Angular/React - 它們在哪裏適合?

我目前使用基於PHP的表達引擎或Craft CMS構建我們的所有網站。有沒有可能使用Angular或React與這些?我認爲他們是整個前端的行爲是否正確?

例如,我會使用EE/Craft創建API來獲取/發佈數據,然後Angular/React會使用這些調用的數據生成頁面嗎?

+0

請注意,服務器端渲染不是微不足道的(反應比角度更容易,但仍需要節點服務器)。如果你需要在服務器上渲染SEO,你需要考慮到這一點。 – FakeRainBrigand 2014-10-29 19:04:00

+0

對,我假設我想要服務器端渲染,那麼我將無法使用EE或Craft?我不得不使用基於節點的CMS? @FakeRainBrigand – KeironLowe 2014-10-29 19:15:49

+0

不一定。您可以向節點服務器發出請求,該節點服務器僅使用提供的數據呈現反應組件。它只是用作渲染引擎,但所有的數據庫訪問和業務邏輯都保留在基於PHP的CMS中。 – FakeRainBrigand 2014-10-29 23:45:34

回答

3

這正是我想要做的。我不太熟悉你使用的CMS框架,但是對CMS開發有很好的經驗。通常,我利用提供的API將數據帶到表示層,然後使用Angular等JavaScript框架創建我的UI。

如果您不使用任何CMS服務器控件,並通過API調用執行所有數據操作,那麼此方法將非常有效。

0

使用CMS作爲API的數據很好,但你可能會更適合使用自定義的東西(比如rails或nodejs項目)。如果你只是建立一個API,CMS的理想情況並不理想。通常,您將React/Angular網站構建爲靜態網站,您可以將其部署到託管提供商(如S3或Github Pages),這樣可以提高安全性,速度和可伸縮性的直接好處。從您的靜態React或Angular站點,然後利用您的服務器API來獲取數據。

但是,這隻能解決數據問題,而不是內容管理問題。由於您擁有靜態網站,因此您的內容編輯或營銷人員無法更改您網站上的內容。一切都必須在源代碼中完成 - 由開發人員完成。您可以通過在靜態網站上添加一個像INSTANT這樣的嵌入式內容管理解決方案來解決此問題。沒有任何編碼,它允許任何擁有帳戶的人直接在網站上更改內容。