2017-02-07 46 views
0

我在客戶端和nodejs中使用帶打字機的angularjs2並在後端表達,每當我對客戶端文件進行更改(.ts & .html)在端口3000上運行我的節點服務器時,我沒有得到保存的更改,因此我必須爲ng-2 lite-server運行npm start,以便它像刷新以獲取更改,我不確定是否我需要一個模塊加載器,如SystemJS,這是我使用的一個ng2,或者我需要在我的服務器中需要另一個systemjs,以便在保存後進行更改。讓nodeJS刷新angularjs2文件而不用npm重新編譯開始

在我的服務器上的文件,我有

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

加載的靜態文件,並加載有我知道他們加載NG2應用模塊線index.html文件

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

由於我的服務器加載了包含上面的代碼的index.html,我是否期望nodejs和express來相應地加載更新的文件,還是因爲nodejs使用commonJS而不是系統?

這是做到這一點的正確方法,還是有更好的ng2和nodejs集成方法?

在這方面有什麼有效的選擇?

回答

1

我建議使用pm2來運行你的節點服務器。 --watch標誌將重新啓動節點(非優雅但很快)。如果您的Angular應用程序位於節點應用程序文件夾內,那麼節點將只重新開始標記,如果它在外面,那麼您可以將指定的路徑傳遞給--watch標誌。

pm2是Node的生產質量工具,在本地也很出色。

詳細說明:http://pm2.keymetrics.io/docs/usage/watch-and-restart/
例CMD:pm2 start index.js --watch