[英]How to setup express and node into an existing front-end only Angular 2 project?
我有一個使用Angular-CLI和NPM的當前僅前端Angular 2應用程序。 我希望訪客能夠通過聯系表向我發送電子郵件。
為此,我顯然需要一個后端,express和node,而我沒有使用經驗。
我需要將express和node集成到我的應用程序中,但是我不知道如何正確執行此操作。
我發現這對SO,但它不是我的情況相關的類似的問題。
其他教程僅顯示如何構建MEAN堆棧應用程序,而不在構建前端后整合后端。
我想知道的是 :
設置使用angular-cli構建的項目以使用nodejs / express后端的最佳方法是簡單地創建一個提供目錄的Express項目。 在您的客戶端項目中,如果它是使用angular-cli創建的,則應該能夠鍵入ng build
,它將所有內容編譯到dist
目錄中。
從那里,您可以創建一個提供該dist
目錄的Express服務器,如下所示:
app.get('*', (req, res) => {
res.sendFile(path.join(__dirname, 'dist/index.html'));
});
您可以構建的最簡單的服務器可能類似於
var express = require('express')
var path = require('path');
var app = express()
app.get('*', (req, res) => {
res.sendFile(path.join(__dirname, 'dist/index.html'));
});
app.listen(3000, function () {
console.log('Example app listening on port 3000!')
});
這將攔截所有路由並將其重定向到創建的dist/
文件夾中的index.html
文件。
有關如何設置和更多高級設置的更多信息,請查看以下鏈接:
只需將dist/
文件夾視為將在Express服務器上提供服務的靜態文件,由於路由和所有操作都是通過angular處理的,因此您將被設置。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.