express-generatorでtemplate engineを指定しないでアプリ雛形を作成
最近、Expressを利用してるのですが、 express-generator
の情報を探すとhtmlのtemplate engineが指定した情報が多い。
defaultは、jade
(指定しないと、 jade
) が指定される。
個人的にはExpressはWeb APIが中心なので、アプリの雛形にはtemplate engineを含めたくない。 express-generatorのGithubをみたら、HTMLで出力するoptionがあった。
ログを追ってると去年追加されたんだ。(結構最近で意外) github.com
雛形を作成する際に、 --no-view
optionを付けた状態で実行する。
$ npx express --no-view ./tmp-app && cd ./tmp-app
- 実行結果
create : tmp-app/ create : tmp-app/public/ create : tmp-app/public/javascripts/ create : tmp-app/public/images/ create : tmp-app/public/stylesheets/ create : tmp-app/public/stylesheets/style.css create : tmp-app/routes/ create : tmp-app/routes/index.js create : tmp-app/routes/users.js create : tmp-app/public/index.html create : tmp-app/app.js create : tmp-app/package.json create : tmp-app/bin/ create : tmp-app/bin/www change directory: $ cd ./tmp-app install dependencies: $ npm install run the app: $ DEBUG=tmp-app:* npm start
- 雛形アプリのディレクトリ構成
. ├── app.js ├── bin │ └── www ├── package.json ├── public │ ├── images │ ├── index.html │ ├── javascripts │ └── stylesheets │ └── style.css └── routes ├── index.js └── users.js
publicディレクトリの中がindex.htmlなどになっている。
expressを実行するために、必要なmoduleをインストールする。
$ npm install
$ moduleをインストール後、アプリを実行する。
$ npm run start
http://localhost:3000にアクセスすると、デフォルトのExpressの画面が表示される。