ในการพัฒนาเว็บ การแสดงข้อมูลจากเซิร์ฟเวอร์บนเว็บเพจเป็นสิ่งสำคัญสำหรับการสร้างประสบการณ์ผู้ใช้แบบโต้ตอบและไดนามิก นี่คือที่ Template Engine มา Express.js ในการช่วยเหลือ A Template Engine เป็นเครื่องมือที่ช่วยให้คุณสร้างเทมเพลต HTML แบบไดนามิกโดยการแทรกข้อมูลจากเซิร์ฟเวอร์ลงในโค้ด HTML
ทำไมต้องใช้ Template Engine ?
Template Engine ช่วยแยกมาร์กอัป HTML ออกจากข้อมูลที่มาจากเซิร์ฟเวอร์ ซึ่งช่วยให้คุณจัดการโค้ด HTML ได้ง่ายขึ้นโดยไม่ต้องฝังข้อมูลลงในโค้ดแต่ละบรรทัด คุณจะสร้าง "ตัวยึดตำแหน่ง" หรือ "แท็ก" แทนภายในโค้ด HTML ซึ่ง Template Engine จะเติมข้อมูลฝั่งเซิร์ฟเวอร์ในภายหลัง
ใช้ Template Engine ใน Express.js
Express.js รองรับต่างๆ template engine เช่น Pug(เดิมชื่อ Jade) และ EJS(Embedded JavaScript) ด้านล่างนี้เป็นตัวอย่างของการใช้ Pug และ EJS ใน Express.js:
การใช้ปั๊ก Template Engine
ติดตั้ง Pug: คุณต้องติดตั้ง pug
แพ็คเกจผ่าน npm
npm install pug --save
Configure Template Engine: ในไฟล์คอนฟิกูเรชันของแอปพลิเคชันของคุณ(เช่น app.js
) กำหนด Pug เป็นไฟล์ template engine.
app.set('view engine', 'pug');
สร้างเทมเพลต Pug: สร้างไฟล์ Pug ใน views
ไดเร็กทอรี ตัวอย่างเช่น สร้าง index.pug
ไฟล์:
doctype html
html
head
title My Express App
body
h1 Welcome to My Express App
p #{message}
การจัดการเส้นทางและการแสดงข้อมูล: ในการ จัดการ เส้นทาง คุณสามารถส่งข้อมูลไปยังส่วนที่ template engine ใช้ res.render()
app.get('/',(req, res) => {
const message = 'Hello from Express!';
res.render('index', { message });
});
การใช้ EJS Template Engine
ติดตั้ง EJS: ติดตั้ง ejs
แพ็คเกจผ่าน npm
npm install ejs --save
กำหนดค่า Template Engine: กำหนด EJS เป็นการกำหนด template engine ค่าแอปพลิเคชันของคุณ
app.set('view engine', 'ejs');
สร้างเทมเพลต EJS: สร้างไฟล์ EJS ใน views
ไดเร็กทอรี ตัวอย่างเช่น สร้าง index.ejs
ไฟล์:
<!DOCTYPE html>
<html>
<head>
<title>My Express App</title>
</head>
<body>
<h1>Welcome to My Express App</h1>
<p><%= message %></p>
</body>
</html>
การจัดการเส้นทางและการแสดงข้อมูล: ในการจัดการเส้นทาง ให้ส่งข้อมูลไปยังส่วน ที่ template engine ใช้ res.render()
app.get('/',(req, res) => {
const message = 'Hello from Express!';
res.render('index', { message });
});
บทสรุป
การใช้ Template Engine in Express.js ช่วยให้คุณสร้างหน้าเว็บแบบไดนามิกและแสดงข้อมูลจากเซิร์ฟเวอร์บนเบราว์เซอร์ของผู้ใช้ ด้วยการใช้ Pug, EJS หรืออื่น ๆ template engine คุณสามารถสร้างหน้าเว็บแบบโต้ตอบและยืดหยุ่นที่ให้ประสบการณ์ผู้ใช้ที่ดีขึ้นและเพิ่มประสิทธิภาพการจัดการโค้ด HTML และข้อมูล