2015-09-28 51 views
4

我正在使用命令express -e myAppName來啓動我的應用程序。將Express生成的app.js文件更改爲server.js

默認情況下,這給了我一個名爲app.js文件,大家都知道我持有的所有服務器邏輯,中間件等

我試圖改變的app.js名稱server.js而這樣做後,我得到這個錯誤。 Error: Cannot find module '../app'

所以我進入我的bin目錄和www文件中更改var app = require('../app');var app = require('../server');但因此它仍然存在沒有解決的錯誤。

我對網絡開發(3個月)比較陌生,近兩個月與MEAN協議棧一起工作。我環顧了一會兒,並沒有發現有人試圖像我想要的那樣更改文件名。

+0

你用什麼命令啓動你的應用程序? – chriskelly

+0

對不起,如果我不明白你的問題..我開始運行mongod,nodemon的應用程序,我在localhost 3000 atm ..這是你的意思嗎? – Shotbyabel

+0

nodemon是我之後的事情。我想知道你是否使用npm start,在這種情況下你可能需要改變你的package.json。我通常不會生成快速應用程序,但我現在會嘗試重現。 – chriskelly

回答

4

你所做的是正確的(即更新bin \ www中的路徑)。

然而,你應該使用npm start

一般開始您的明確程序,NPM應用程序允許您指定包裏面JSON的命令,將啓動應用程序,這是看的第一個地方。

對於快遞產生這應該如下所示:

{ 
    "scripts" : { 
    "start" : "node bin/www" 
    } 
} 

如果以後要改變它,傳遞參數所有你所要做的就是更新您的的package.json文件和最終用戶不會受到影響。

npm start給你的程序使用者一致的方式來啓動應用程序不管什麼文件名或參數更改

建立發展

在你的情況,因爲你正在使用nodemon自動重啓當你開發時,你應該如下使用它:

nodemon bin/www 

而不是修改你的入口點你應該做一個特殊的腳本像這樣:

{ 
    "scripts" : { 
    "start" : "node bin/www", 
    "devel" : "nodemon bin/www" 
    } 
} 

然後開始nodemon使用:

npm run devel 

這樣,你的最終用戶不與nodemon開發工具開始。

+0

我確實記得我的導師做了一個參考或建議nodemon bin/www我必須回去看看我的筆記。有很多東西需要掌握,現在我已經完成了學業,我正在努力建立一個一致且實用的方法,這對我來說能夠在開發新應用程序時起作用。再次感謝。我會在這方面做更多的閱讀。 – Shotbyabel

+0

@Shotbyabel:沒問題。我會更新你應該如何處理nodemon!當你得到15分時不要忘記接受答案;) – chriskelly

+0

這真的很適合你。你說對了!我只是..我的第一個!這是我一段時間以來的迷戀。現在我可以告訴別人怎麼做。祝你晚安。 – Shotbyabel

相關問題