2017-04-02 44 views
0

如果想跳的Node.js啓動了一個項目,明確的.js Bin文件。一個會使用express-generator。創建一個新的項目後,你的文件樹看起來像這樣的站了出來,我是跑你需要做node bin/www應用程序或一個預定義的快捷npm run使用效益比快遞發電機

. 
├── app.js 
├── bin 
│ └── www 
├── package.json 
├── public 
│ ├── images 
│ ├── javascripts 
│ └── stylesheets 
│  └── style.css 
├── routes 
│ ├── index.js 
│ └── users.js 
└── views 
    ├── error.pug 
    ├── index.pug 
    └── layout.pug 

一件事。我的問題是,爲什麼會一個使用它是www的方式,而不是從文件的頂部添加.js延伸和刪除#!/usr/bin/env node?這樣做有什麼好處,還是個人喜好?

+0

bin \目錄是一個你可以定義你的各種啓動腳本的位置,www是一個它應該看起來像樣的例子,最終你可以有啓動腳本,如測試,停止或重新啓動等等。你不必觸摸app.js.就可以擁有不同的配置。 http://stackoverflow.com/questions/23169941/what-does-bin-www-do-in-express-4-x –

+0

@RatanKumar謝謝你的評論。我得到了這一點,我的問題是爲什麼它是'www'而不是'www.js',並且如果有這樣做的好處嗎? – AntK

回答

0

讓我們來看看bin/www文件的第一行:

#!/usr/bin/env node 

shebang告訴的* nix操作系統如何,如果你嘗試運行它作爲一個程序解釋文件。

所以這個文件可以開始作爲一個程序。而在Linux中,傳統的可執行文件沒有擴展名。

+0

謝謝你的回答,我明白這一行告訴計算機如何執行這段代碼,我的問題是你爲什麼要這樣做,而不是在其上放上'.js'擴展名。 – AntK

+0

@AntK:'... Linux的傳統上的可執行文件不具有擴展...' –

+0

我知道,謝謝。我只是想知道這是爲什麼在具有'「開始」最好「節點斌/ www.js」',你的'www.js'也可以LINTED,測試和其他的東西,你可以做的到JS文件您應用。 – AntK