Professional Documents
Culture Documents
A – LÝ THUYẾ T
I – VIEW
1. View
View là phầ n hiển thị giao diện, đâ y là nơi tậ p trung cá c mã hiển thị HTML, và mộ t phầ n nhỏ
các mã CSS, Javascript (nếu có )
2. Template Engine
Template Engine cho phép chú ng ta tổ chứ c lạ i và quả n lý các thà nh phầ n trên giao diện
HTML mộ t cách khoa họ c và thuậ n tiện hơn, ngoà i ra các Template Engine cò n hỗ trợ bộ thư viện
giú p thao tác vớ i dữ liệu đượ c đẩ y từ Controller sang mộ t cách dễ dà ng và dễ nhìn . Mộ t số
Template Engine cò n hỗ trợ chú ng ta xâ y dự ng lạ i cấ u trú c HTML mộ t cách tố i giả n hơn rấ t nhiều.
Mộ t số Template Engine phổ biến đượ c sử dụ ng trong cá c dự á n củ a NodeJS
EJS
Pug
Jade
…
"views": là key bắ t buộ c để định nghĩa mộ t đườ ng dẫ n đến thư mụ c chứ a các view
__dirname+"/apps/views": xá c định đườ ng dẫ n tuyệt đố i tớ i thư mụ c views chứ a các view
(thư mụ c views đặ t tên tù y ý)
"view engine": là key bắ t buộ c để định nghĩa mộ t kiểu Template Engine bấ t kỳ
"ejs": định nghĩa kiểu Template Engine là EJS (có thể config vớ i các giá trị khác cho các
Template Engine khác)
Bước 3: sử dụ ng
Code:
res.render('admin/login');
}
Trong đó:
render: phương thứ c xuấ t hiện khi cài EJS, đâ y là phương thứ c gọ i mộ t file view ejs và o
"admin/login": đườ ng dẫ n tớ i file login view ejs (đượ c tính bắ t đầ u từ thư mụ c views do
chú ng ta đã định nghĩa ở phầ n config)
Vù ng là m việc
<%
var num = 10;
%>
<%=num%>
3. Hàm Include trong EJS
Code:
<%- include("layout/header")%>
Trong đó:
res.redirect('admin/dashboard');
}
Trong đó:
render: phương thứ c xuấ t hiện khi cài EJS, đâ y là phương thứ c gọ i mộ t file view ejs và o
"admin/login": đườ ng dẫ n tớ i file login view ejs (đượ c tính bắ t đầ u từ thư mụ c views do
chú ng ta đã định nghĩa ở phầ n config)
data: là key, sang View nó sẽ là biến data và lưu trữ giá trị 1000
// /test/:id
console.log(req.params);
Trong đó:
:id: là tên tham số sẽ nhậ n giá trị đượ c truyền qua URL
req.params: trả về mộ t đố i tượ ng chứ a các cặ p key:value (chính là tên tham số và giá trị
truyền tương ứ ng trên URL)
app.use(bodyParser.json())
Trong đó:
Code:
// View
<form method="post" action="/test1">
<input type="text" name="email"/>
<br/>
<input type="text" name="password"/>
<br/>
<button type="submit" name="sbm">Login</button>
</form>
...
// Controller
const test1 = (req, res)=>{
console.log(req.body);
}
Trong đó:
req.body: trả về mộ t đố i tượ ng lưu trữ tấ t cả các giá trị đượ c nhậ p và o từ form
B – THỰ C HÀ NH
I – THỰ C HÀ NH XÂ Y DỰ NG DỰ Á N TRÊ N LỚ P
1. Xây dựng chức năng Login
II – CÔ NG VIỆ C VỀ NHÀ
1. Cài đặt MongoDB (bản mới nhất)
2. Cài đặt Robo 3T (bản mới nhất)