Chúng ta cần phải dùng các template engine thì mới có thể tạo ra được các file HTML từ phía server. Đây được gọi là kỹ thuật server-side rendering.

Những template engine thông dụng trong Express là:

Info

Express Generator sử dụng Pug làm template engine mặc định.

Basic usage

Để sử dụng template engine, ta cần các thiết lập sau:

  • Cài đặt template engine.
  • Khai báo loại template engine sử dụng.
  • Khai báo đường thư mục chứa các tập tin template.
app.set('view engine', 'pug')
app.set('views', path.join('./views'))

Note

Ví dụ bên trên sử dụng template engine Pug và cấu hình thư mục chứa các tập tin template là thư mục /views.

Một tập tin template thuộc template engine pug sẽ có định dạng như sau:

// index.pug
html
    head
        title=title
    body
        h1=message

Để render ra một tập tin template, ta cần sử dụng phương thức render thuộc đối tượng res:

app.get('/', (req, res) => {
    res.render('index', { title: 'Hey', message: 'Hello there!' })
})

Các giá trị truyền vào tập tin template cần được đặt trong một đối tượng. Đối tượng này sẽ được truyền vào làm đối số thứ hai của phương thức render.

Documents