Hướng dẫn nodejs ejs

Khi chúng ta tạo một App với Node JS, có nhiều cách để quản lý views nhưng cách dễ dàng và nhanh nhất là EJS. 1. Bắt đầu App của chúng ta sẽ bao gồm 2 phần: Gồm Full widthsidebar

Cấu trúc của app sẽ như sau: -- views -- -- -- partials -- -- -- -- -- foooter.ejs -- -- -- -- -- head.ejs -- -- -- -- -- header.ejs -- -- -- pages -- -- -- -- -- index.ejs -- -- -- -- -- about.ejs -- package.json -- server.js

Trong đó package.json sẽ chứa thông tin và các depedencies mà chúng ta cần [Như express, nodemon, EJS, ...]. Còn server.js chứa các cấu hình về Express.

a. Node setup: Bật Terminal và gõ các lệnh sau:

mkdir node_report
cd node_report
npm init # Enter đến khi nào xong thì thôi
atom .

Kết quả như sau: EJS Is Fun



Sample app






    



    
        
    

    
        

This is great

Welcome to templating using EJS

Sau khi thêm các tệp tin trên, ta F5 lại localhost:8080 và đạt kết quả sau:

Hiện tại chúng ta có 2 pages là pages home và about, ta đã làm xong home rồi. Giờ đến about, tạo mới view about như sau:




    



    
        
    

    
        

This is great

Welcome to templating using EJS

Look I'm A Sidebar!

F5 lại localhost:8080 và đạt kết quả như sau:

3. Truyền Data sang Views Chúng ta sẽ thử truyền một list và variable sang trang home. Chỉnh sửa file server.js như sau:

// index page 
app.get['/', function[req, res] {
    var drinks = [
        { name: 'Bloody Mary', drunkness: 3 },
        { name: 'Martini', drunkness: 5 },
        { name: 'Scotch', drunkness: 10 }
    ];
    var tagline = "Any code of your own that you haven't looked at for six or more months might as well have been written by someone else.";

    res.render['pages/index', {
        drinks: drinks,
        tagline: tagline
    }];
}];

Như trên chúng ta đã truyền sang trang index.ejs hai giá trị drinks và tagline. Sang views/pages/index.ejs để nhận những giá trị này:


...

Variable

Loop

  • -
...

Kết quả đạt được như sau:

4. Tổng kết Như vậy chúng ta đã hoàn thành một app đơn giản bằng Node JS sử dụng Express, Nodemon và EJS để quản lý views. Qua đó chúng ta đã biết được:

Chủ Đề