我的AngularJS项目在我的本地计算机上运行,我正在考虑使用NodeJS并尝试看看它是如何出现的,我已经观看了很多视频并在博客上阅读但我没有遇到过简单直截了当我在NodeJS中发布我的AngularJS项目需要哪些步骤。
如果你们已经完成了这个过程,你能指出我或展示我需要做什么吗?
正如我所说,我的AngularJS项目正在运行,我计划稍后将我的AngularJS发布到Heroku。
答案 0 :(得分:1)
因此,如果我理解正确,您希望使用NodeJS服务器在Heroku上提供AngularJS应用程序。
如果这是正确的,那么你已经完成了最艰难的部分:你的申请。 =)
我们来了NodeJS!
首先,您需要启动节点项目。
npm init
这将生成一个package.json文件,该文件将包含项目及其依赖项的描述。
使用Express提供静态文件非常简单,只需安装即可:
npm install --save express
编写一个名为app.js的js文件,其中包含以下行:
var express = require('express');
var app = express();
// webapp is the folder containg your application
app.use('/', express.static('webapp'));
var server = app.listen(3000, function () {
var host = server.address().address;
var port = server.address().port;
console.log('Example app listening at http://%s:%s', host, port);
});
将您的应用程序放在一个文件夹中(在我的示例中名为webapp,但如果您愿意,可以改变它)。
然后你可以运行
node app.js
您的应用现在在http://locahost:3000
的NodeJS服务器上本地运行对于Heroku部分简要地看一下他们的doc让我觉得它会尝试运行
npm start
简单来说,npm允许您在package.json文件的scripts部分中定义一些别名。请注意,测试和启动是特殊的,因为您可以使用npm start / npm test直接运行它们。您可以使用您想要的任何单词,但如果您将其命名为服务器,则调用将是npm运行服务器(而不仅仅是npm服务器)。
将此内容添加到您的package.json中,以使其开始' npm start'运行节点app.js' :
"scripts": {
"start": "node app.js"
}
从那里开始,我觉得你很乐意上线!