2017-08-02 95 views
1

我想知道如何設置自己的開發環境來構建一個使用API​​服務器的Angular TypeScript應用程序? https://angular.io/上的示例都指示您使用「ng serve」或「npm start」,它會自動傳輸您的TS 啓動本地http服務器。如何針對實時API服務器開發Angular 4.3.2應用程序?

這非常適合非常簡單的開發和原型設計。但是,您如何設置開發環境以針對實際API服務器構建Angular應用程序?

至於我可以告訴到目前爲止,有兩種選擇:

TSC -w - >編譯所有的.ts爲.js文件,在指定的tsconfig.json OUTDIR

納克構建--prod - >建立一切,你複製+粘貼到你的本地服務器?每當你需要測試你的改變時,這似乎很多工作。

對於如何爲整個堆棧開發設置開發環境(包括後端代碼),任何建議或建議都會很棒。

回答

2

以下是我們如何配置我們的開發環境以使用Azure函數來提供所有API請求。

在的package.json使用這樣的:

"start": "ng serve --proxy-config proxy.config.json" 

這裏是proxy.config.json的內容(不,這不是真正的目標或關鍵):

{ 
    "/api/*": { 
     "target": "https://my-function-app.azurewebsites.net", 
     "ws": true, 
     "changeOrigin": true, 
     "logLevel": "debug", 
     "headers": {"x-functions-key": "2KPfusD1FLIbVPWgyYrkDyhgy6Nbmo69n8RqUPTb8XCAWqXXUaWmZy=="} 
    } 
} 

確保你以開始角度cli npm開始而不是ng服務否則它將忽略代理。

您可以使用相同的方法連接到以節點,PHP或任何您想要的方式運行的本地API服務器。您希望讓Angular代碼在Angular CLI中運行,以便您可以調試並自動重新編譯和重新加載。

+0

好的問題和答案,是否有任何資源,你會建議開發角度的應用程序(或任何類型的)對Azure?我會用你的答案作爲一個 – Arjang

+0

不幸的是,我還沒有看到任何好的Azure/Angular資源,希望微軟能夠在那裏佔據更多的領先地位。我可以給出的最佳建議是將Azure功能用於後端API,並使用節點Web應用程序服務來提供Angular dist文件夾,並將所有api調用代理到函數。我們的表現非常快速地這樣做。 – Graham

相關問題