2017-02-07 8 views
0

Я использую angularjs2 с машинописными текстами на стороне клиента и nodejs и выражаю в фоновом режиме, и каждый раз, когда я вношу изменения в файлы своей стороны (.ts & .html) при запуске моего узла-сервера на порт 3000 я не получаю сохраненные изменения, поэтому мне нужно запустить npm-запуск для lg-сервера ng-2, чтобы он мог обновиться, чтобы получить изменения, я не уверен, Мне нужен один модуль-загрузчик, такой как SystemJS, который я использую с ng2, или мне нужна другая система, требуемая на моем сервере, чтобы получить изменения после сохранения.У меня есть nodeJS обновить файлы angularjs2 без повторной компиляции с запуском npm

В моем файле сервера я есть

app.use(express.static(path.join(__dirname, 'client'))); 

, который загружает статические файлы, и который загружает файл index.html, который имеет строки, которые я узнал, что они загружают модули приложения для NG2

<script src="systemjs.config.js"></script> 
<script> 
    System.import('app').catch(function(err){ console.error(err); }); 
</script> 

Поскольку мой сервер загружает index.html, который содержит приведенный выше код, im ожидает, что nodejs и express загружают обновленные файлы соответственно, или это потому, что nodejs использует commonJS вместо системы?

Это правильный способ сделать это или есть лучший метод интеграции для ng2 и nodejs?

Каковы эффективные варианты, которые существуют в этом аспекте?

ответ

1

Я бы предложил использовать pm2 для запуска вашего узла. Флаг --watch перезапустит узел (не изящно, но быстро). Если ваше Угловое приложение находится внутри папки приложения узла, то узел перезапустится с учетом только флага, если он находится вне этого, тогда вы можете передать указанный путь к флагу -watch.

pm2 является инструментом качества продукции для узла, а также отлично работает на местном уровне.

Детали: http://pm2.keymetrics.io/docs/usage/watch-and-restart/
Пример CMD: pm2 start index.js --watch