📜  Express.js app.engine()函数(1)

📅  最后修改于: 2023-12-03 15:14:57.348000             🧑  作者: Mango

Express.js app.engine()函数

Express.js中的app.engine()函数用于设置模板引擎,该函数接受两个参数,第一个参数为模板文件扩展名,第二个参数为处理该扩展名的模板引擎函数。

语法
app.engine(ext, callback)

参数说明:

  • ext:模板文件扩展名,如html、ejs。
  • callback:处理该扩展名的模板引擎函数,如ejs.render
示例

以下示例演示了如何使用app.engine()函数来设置EJS模板引擎。

const express = require('express');
const app = express();
const ejs = require('ejs');

// 设置EJS模板引擎
app.engine('ejs', ejs.renderFile);

// 设置模板文件夹
app.set('views', './views');

// 设置静态文件夹
app.use(express.static('public'));

// 路由
app.get('/', function(req, res) {
    const data = {
        title: 'Express.js App',
        message: 'Welcome to the homepage of Express.js App.'
    };
    res.render('index.ejs', data);
});

// 监听3000端口
app.listen(3000, function() {
    console.log('Server started on port 3000.');
});

在上述代码中,我们首先设置了EJS模板引擎,然后指定了模板文件夹和静态文件夹的路径。接着,我们设置了一个路由来处理首页请求,在路由函数中,我们使用res.render()方法来渲染index.ejs模板文件,并传入一个参数data作为模板的上下文对象。

总结

Express.js中的app.engine()函数用于设置模板引擎,让我们能够使用不同的模板引擎来渲染模板文件。使用该函数前需要先安装所需的模板引擎包,如EJS、Handlebars等。