
កន្លងមក ការបង្ហាញទំព័រដែលជាឯកសារប្រភេទ HTML ផ្សេងៗ ត្រូវបានធ្វើឡើងដោយប្រើប្រាស់ក្បួនឈ្មោះ «sendFile» នៅក្នុងសាស្ត្រា Express ។ ហើយទំព័រទាំងនោះត្រូវបានសរសេររៀបចំឡើងដោយប្រើប្រាស់ភាសា HTML ។ ក៏ប៉ុន្តែ ភាសា HTML មិនអនុញ្ញាតអោយយើងអាចយកទិន្នន័យផ្សេងៗពីកម្មវិធី Node.js មកសរសេរបង្ហាញនៅលើទំព័រណាមួយបានឡើយ យើងចាំបាច់ត្រូវប្រើប្រាស់ភាសាគំរូគេហទំព័រណាមួយ (templating language) ដើម្បីអាចយកទិន្នន័យទាំងនោះ មកបង្ហាញនៅលើទំព័រ HTML ។
នៅក្នុងចំណោមភាសាគំរូគេហទំព័រសំរាប់ប្រើប្រាសជាមួយនឹងសាស្ត្រា Express, ភាសា EJS (Effective JavaScript) មានលក្ខណៈងាយស្រួលគួរសមដែរ ព្រោះវាអនុញ្ញាតអោយយើងអាចប្រើប្រាស់ភាសា JavaScript លាយឡំជាមួយនឹងពាក្យពិសេសផ្សេងៗនៅក្នុងភាសានោះបាន។
ដើម្បីអាចប្រើប្រាស់ភាសានេះបាន យើងចាំបាច់ត្រូវទាយយកកម្មវិធីរបស់ភាសានេះមកដំឡើងនៅក្នុងកម្មវិធីគេហទំព័ររប់សយើង ដោយធ្វើដូចខាងក្រោមនេះ៖
npm install ejs
បន្ទាប់ពីមានកម្មវិធី EJS រួចហើយ គ្រប់ឯកសារទាំងឡាយណាដែលត្រូវបានសរសេរជាភាសា EJS និងមានឈ្មោះ .ejs នៅខាងចុង នឹងត្រូវបកប្រែជាភាសា HTML ជាស្វ័យប្រវត្តិ នៅពេលដែលកម្មវិធីគេហទំព័រមានដំណើរការ។ ពិនិត្យកម្មវិធីខាងក្រោមនេះ៖
<!doctype html> <html lang="en"> <head>គេហទំព័រយើង </head> <body> <%- include('header.ejs') %> <%- include('body.ejs') %> <%- include('footer.ejs') %> </body> </html>
ក្បាលគេហទំព័រ
តួគេហទំព័រ
ជាបំបូង យើងត្រូវបង្កើតថតថ្មីមួយមានឈ្មោះថា views នៅក្នុងថតជាមួយឯកសារឈ្មោះ express.js ដើម្បីរក្សាឯកសារទាំងបួននេះទុកមួយអន្លើសិន។
នៅលើបន្ទាត់លេខ 8 ការសរសេរថា <%- include('header.ejs') %> គឺជាបញ្ជានៅក្នុងភាសា EJS តំរូវអោយបញ្ជូលឯកសារឈ្មោះ header.ejs នៅកន្លែងនោះ។
នៅលើបន្ទាត់លេខ 9 ការសរសេរថា <%- include('body.ejs') %> គឺជាបញ្ជានៅក្នុងភាសា EJS តំរូវអោយបញ្ជូលឯកសារឈ្មោះ body.ejs នៅកន្លែងនោះ។
នៅលើបន្ទាត់លេខ 10 ការសរសេរថា <%- include('footer.ejs') %> គឺជាបញ្ជានៅក្នុងភាសា EJS តំរូវអោយបញ្ជូលឯកសារឈ្មោះ footer.ejs នៅកន្លែងនោះ។
ក៏ប៉ុន្តែ ទោះជាយ៉ាងណាក៏ដោយ មុននឹងអាចអនុញ្ញាតអោយកម្មវិធី EJS បកប្រែឯកសារទាំងឡាយដែលត្រូវបានរៀបរៀងឡើងដោយប្រើប្រាស់ភាសា EJS យើងចាំបាច់ត្រូវធ្វើការកែកុនមួយចំនួននៅក្នុងឯកសារ express.js ជាមុនសិន។ ពិនិត្យកម្មវិធីខាងក្រោមនេះ៖
var http = require('http'); var express = require('express'); var app = express(); var path = require('path'); var port = process.env.PORT || 3000; //កំណត់យកថតឈ្មោះ views សំរាប់រក្សាទុកឯកសារជាភាសា EJS ទាំងឡាយ app.set('views', path.join(__dirname, 'views')); //កំណត់យកកម្មវិធី EJS សំរាប់បកប្រែឯកសារទាំងឡាយនៅក្នុងថតឈ្មោះ views app.set('view engine', 'ejs'); app.get('/', function (req, res) { //យកឯកសារឈ្មោះ index នៅក្នុងថតឈ្មោះ views មកបកប្រែ //ដើម្បីបង្ហាញព័ត៌មានទាំងឡាយនៅលើ browser res.render('index') }); app.listen(port, function() { console.log('The server is running at port '+port); });

នៅលើបន្ទាត់លេខ 8 ការសរសេរថា app.set('views', path.join(__dirname, 'views')); គឺជាការកំណត់យកថតឈ្មោះ views សំរាប់រក្សាទុករាល់ឯកសារជាភាសា EJS ទាំងឡាយ។ ្
នៅលើបន្ទាត់លេខ 10 ការសរសេរថា app.set('view engine', 'ejs'); គឺជាការកំណត់យកកម្មវិធី EJS សំរាប់បកប្រែបណ្តាឯកសារ EJS ទាំងឡាយ។
នៅលើបន្ទាត់លខ 15 ការសរសេរថា res.render('index') គឺជាការតំរូវអោយយកឯកសារឈ្មោះ index នៅក្នុងថតឈ្មោះ views មកបកប្រែពីភាសា EJS ទៅជាភាសា HTML ដើម្បីបង្ហាញព័ត៌មានទាំងឡាយនៅលើ browser ៕