2015-03-10 2 views
0

У меня есть проект AngularJS, работающий на моей локальной машине, и я думаю о том, чтобы играть в NodeJS и пытаться посмотреть, как он выйдет, и я просмотрел много видео и читал в блоге, но я не встречал прямо какие шаги мне нужно, чтобы опубликовать мой проект AngularJS в NodeJS.NodeJS/AngularJS - Какие шаги мне нужны?

Если вы, ребята, уже сделали этот процесс, сможете указать мне или показать, что мне нужно сделать?

Как я уже сказал, у меня есть проект AngularJS, и я планирую впоследствии опубликовать свой AngularJS в Heroku.

+0

Итак, на ваш вопрос мы можем дать вам учебник? – Claies

ответ

1

Итак, если я правильно понимаю, что вы хотите обслуживать приложение AngularJS на Heroku, используя сервер NodeJS.

Если это так, вы довольно близко, так как вы сделали самую трудную часть: ваше приложение. =)

NodeJS здесь мы приходим!

Сначала вам нужно инициировать проект узла.

npm init 

Это создаст файл package.json, который будет содержать описание вашего проекта и его зависимостей.

Обслуживание статических файлов с Express довольно легко все, что вам нужно сделать, это установить его:

npm install --save express 

Написать файл с именем JS app.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 

Ваше приложение теперь работает локально на сервере NodeJS на http://locahost:3000

Для части Heroku кратко глядя на их doc заставляет меня думать, что он будет пытаться запустить

npm start 

Проще говоря, npm позволяет определить типы псевдонимов в разделе сценариев вашего файла package.json. Обратите внимание, что тесты и запуск являются особенными, так как вы можете запускать их напрямую, используя тест npm start/npm. Вы можете использовать любое слово, которое хотите, но если вы назовете его сервером, например, вызовом будет npm-сервер (а не только сервер npm).

Добавьте это в package.json сделать «старт НПМ» запустить «узел app.js»:

"scripts": { 
    "start": "node app.js" 
} 

Оттуда я думаю, что вы хорошо идти жить!