យើងដឹងរួចមកហើយថា នៅពេលដែលយើងភ្ជាប់ក្បួនណាមួយ ទៅនឹងផ្លូវណាមួយ ក្បួននោះនឹងត្រូវយកទៅប្រើជាស្វ័យប្រវត្តិ នៅពេលដែលមានការចុចបើកគេហទំព័រចូលតាមផ្លូវនោះ។ យ៉ាងណាម៉ិញ ក្រៅពីការភ្ជាប់ក្បួនតែមួយទៅនឹងផ្លូវណាមួយ យើងក៏អាចភ្ជាប់ក្បួនជាច្រើនទៅនឹងផ្លូវនោះ ហើយក្បួនទាំងនោះនឹងត្រូវយកទៅប្រើមួយម្តង ៗ ជាបន្តបន្ទាប់រហូតដល់អស់ក្បួន។ ពិនិត្យកម្មវិធីខាងក្រោមនេះ៖
import express from 'express'
import path from 'path'
const app = express()
const port = process.env.PORT || 3000
const __dirname = path.resolve()
import index from './routes/index.js'
import backend from './routes/backend.js'
app.set('views', path.join(__dirname, 'views'))
app.set('view engine', 'ejs')
app.use(express.static(path.join(__dirname, 'public')))
app.use('/',index)
app.use('/backend',backend)
app.listen(port,function(){
console.log(`This application is listening to the port: ${port}`)
})
/* ./routes/index.js */
import express from 'express'
const index = express.Router()
let data = {}
index.get('/', function(req, res, next) {
data.message = 'ស្វាគមន៍មកកាន់កម្មវិធី Express.js!!'
next()
},function(req,res){
res.render('base',data)
})
export default index
<!--views/base.ejs-->
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
<title>Express.js Web Framework</title>
<link href="/fonts/setup.css" rel="stylesheet">
<link href="/styles/base.css" rel="stylesheet">
</head>
<body>
<p><%= message %></p>
</body>
</html>
ការបង្កើតក្បួនជាច្រើនសំរាប់ផ្លូវណាមួយ អាចត្រូវធ្វើឡើងតាមរបៀបម៉្យាងទៀត ដូចខាងក្រោមនេះ៖
/* ./routes/index.js */
import express from 'express'
const index = express.Router()
let data = {}
const func1 = function(req,res,next){
data.message = 'ស្វាគមន៍មកកាន់កម្មវិធី Express.js!!'
next()
}
const func2 = function(req,res){
res.render('base',data)
}
index.get('/',[func1,func2])
export default index