我嘗試使用NodeJS(Express)作爲服務器創建angular2應用程序。 問題是,當Express嘗試使用自己的模板引擎並路由請求時,會出現衝突,而angular也使用routes和index.html作爲入口點。如何將ExpressJS服務器與Angular2集成
我該如何整合兩者?
我嘗試使用NodeJS(Express)作爲服務器創建angular2應用程序。 問題是,當Express嘗試使用自己的模板引擎並路由請求時,會出現衝突,而angular也使用routes和index.html作爲入口點。如何將ExpressJS服務器與Angular2集成
我該如何整合兩者?
通常,NodeJS/Express將用於爲Angular可以使用的端點提供API。 NodeJS只是一個後端,Angular只是一個前端。
雖然角可以從一個NodeJS服務器提供服務,這是浪費資源,因爲大多數的Angular網站是完全靜態的。也就是說,他們是可以通過S3或FTP提供的javascript,CSS和圖像,並通過服務(twitter上的推文,S3存儲桶中的圖像,自定義NodeJS後端的數據等)獲取所有動態內容。換句話說,不需要動態服務器端渲染。
我強烈建議維護這種方法。將您的Angular應用程序託管在像S3這樣的靜態存儲主機上,並使用NodeJS創建REST API,您的應用程序可以通過Angular服務進行交流。發送GET
請求來獲取JSON數據。獲取生成的JSON數據並使用它來填充您的應用程序。發送POST
,PUT
和DELETE
請求添加或操作數據(假設您計劃擁有後端數據庫)。
通常在您的域中表示的方式是讓http://yourdomain.com
指向您的Angular應用程序。然後,您的角度應用程序將調用指向您的Node API的http://yourdomain.com/api/
或http://api.yourdomain.com
。你可以配置你的DNS來執行這些而不是需要你的代碼中的物理子目錄。
一個angular2項目的設置和運行,但我擔心,如果我創建Express服務器,它將覆蓋文件結構。我找不到一個像樣的參考如何解決它 – Yuvals
這是否解決它? http://stackoverflow.com/a/34864585/2112228 – Sharko