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

ログを追ってると去年追加されたんだ。(結構最近で意外) 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の画面が表示される。 f:id:hinosita:20180704232528p:plain