LoginSignup
12
8

More than 5 years have passed since last update.

Node.jsとExpressとPugを利用する設定方法

Posted at

目的

Node.jsを利用したアプリケーションを作る際の一通りの流れのメモ

環境

  • node 4.4.3
  • npm 2.15.1
  • Windows 8.1

環境構築

まずプロジェクト用フォルダの作成を行います。

commandprompt
mkdir Hoge

Express-generatorを利用

Expressはルーティング機能が入っているモジュールです。Express-generatorでは、プロジェクトのひな型をジェネレートしてくれるのでそれを利用します。

commandprompt
npm i -g express-generator

次に、ジェネレータでプロジェクトのひな型を作成します。
--gitは.gitignoreを作成してくれます。注意として、Hogeの一つ上の階層で以下のコマンドを実行しなければなりません。また、テンプレートエンジンはデフォルトではjadeになります。私はpug(旧jade)を利用するのでそのままテンプレートエンジンはjadeにし、後で拡張子を変えます。

commandprompt
express --git Hoge

package.jsonの変更

ここの章に関しては、人それぞれ作りたいで内容が変わるので一例としてみてください。私の場合は、electronで何かしようと思っていたので、electronが入っています。また、pug(旧jade)を利用するのでpugも入れています。

package.json
{
  "name": "CommentViewer",
  "version": "0.0.0",
  "private": true,
  "scripts": {
    "start": "node ./bin/www"
  },
  "dependencies": {
    "body-parser": "~1.13.2",
    "cookie-parser": "~1.3.5",
    "debug": "~2.2.0",
    "express": "~4.13.1",
    "morgan": "~1.6.1",
    "serve-favicon": "~2.3.0",
    "cheerio": "^0.20.0",
    "electron-packager": "^7.0.1",
    "electron-prebuilt": "^0.37.7",
    "pug": "^2.0.0-alpha6",
    "pug-cli": "^1.0.0-alpha1",
    "request": "^2.72.0"
  }
}

その後、npm iで必要なモジュールを入れていきましょう。

commandprompt
cd Hoge
npm i

views内のファイルの拡張子の変更

viewsの中にある*.jadeファイルをすべてpugにします。

commandprompt
cd views
mv error.jade error.pug
mv index.jade index.pug
mv layout.jade layout.pug
cd ..

app.jsの変更

次に、app.jsに記述されているview engineをjadeからpugに変更します。

app.js(before)
// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'jade');

を以下に変更

app.js(after)
// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'pug');

サーバの起動

次に、サーバの起動を行います。

commandprompt
npm start

起動後は以下のURLにアクセスすると以下の図が表示されると思います。

1.png

12
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
12
8