2017-04-02 5 views
0

エクスプレスでNode.jsでプロジェクトを開始したい場合は、 1つはexpress-generatorを使用します。あなたのファイルツリーが新しいプロジェクトを作成した後 エクスプレスジェネレータで.jsを使用してbinファイルを使用する利点

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

になります私のために際立っていたことの一つは、あなたがnode bin/wwwまたは事前に定義されたショートカットnpm runを行う必要があるアプリケーションを実行することです。私の質問は、なぜ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.js'の代わりに' www'ですか、そして、このようにする利点があるのでしょうか? – AntK

答えて

0

のはbin/wwwファイルの最初の行を見てみましょう:

#!/usr/bin/env node 

このshebangどのようにあなたがプログラムとして、それを実行しようとした場合、ファイルを解釈する* nixのオペレーティングシステムに指示します。

このファイルはプログラムとして起動できます。また、Linuxでは伝統的に実行可能ファイルには拡張子がありません。

+0

答えをありがとう、私はこの行がこのコードを実行する方法をコンピュータに伝えていることを理解しました。私の質問なぜ '.js'拡張子を置くのではなく、これを行うのでしょうか? – AntK

+0

@AntK: '... Linuxの伝統的な実行可能ファイルには拡張子がありません... ' –

+0

私はそれを認識しています、ありがとうございます。私は '' start ":" node bin/www.js "'よりもなぜこれが好ましいのだろうと思っていました。ここであなたの 'www.js'はlinted、テストされていて、あなたのjsファイル応用。 – AntK

関連する問題