コントローラ - Express

コントローラを作成する

コントローラを別ファイルに分けて作成します。

ディレクトリ構成

  • example
    • ...
    • controllers
      • ContentController.js
    • ...
    • routes
      • content.js
    • views
      • content
        • main.ejs
    • app.js
    • ...

ファイル内容

controllers/ContentController.js

module.exports = {
  getMain: (req, res, next) => {
      res.render("content/main");
  }
}

routes/content.js

var express = require('express');
var router = express.Router();
var contentController = require('../controllers/ContentController');

router.get('/main', contentController.getMain);

module.exports = router;

app.js

app.js ファイルに次の内容を追記します。

var contentRouter = require('./routes/content');
app.use('/content', contentRouter);

views/content/main.ejs

<!DOCTYPE html>
<html lang="ja">
<head>
  <meta charset="UTF-8">
  <title>Content Main</title>
</head>
<body>
  <h1>Content Main</h1>
  
</body>
</html>