zoukankan      html  css  js  c++  java
  • 为 Express 开发模板引擎

    为 Express 开发模板引擎
    通过 app.engine(ext, callback) 方法即可创建一个你自己的模板引擎。其中,ext 指的是文件扩展名、callback 是模板引擎的主函数,接受文件路径、参数对象和回调函数作为其参数。

    下面的代码演示的是一个非常简单的能够渲染 “.ntl” 文件的模板引擎。

    var fs = require('fs'); // 此模板引擎依赖 fs 模块
    app.engine('ntl', function (filePath, options, callback) { // 定义模板引擎
    fs.readFile(filePath, function (err, content) {
    if (err) return callback(new Error(err));
    // 这是一个功能极其简单的模板引擎
    var rendered = content.toString().replace('#title#', ''+ options.title +'')
    .replace('#message#', '

    '+ options.message +'

    ');
    return callback(null, rendered);
    })
    });
    app.set('views', './views'); // 指定视图所在的位置
    app.set('view engine', 'ntl'); // 注册模板引擎
    现在 “.ntl” 文件就可以被正确地渲染了。接下来在 views 目录下创建一个名为 “index.ntl” 的模板文件,文件内容如下:

    title#

    message#

    然后,按下面的示例创建一下路由:

    app.get('/', function (req, res) {
    res.render('index', { title: 'Hey', message: 'Hello there!'});
    })
    访问网站首页就能看到由 “index.ntl” 文件渲染出来的 HTML 页面了。

  • 相关阅读:
    SVD与PCA
    Service(二):通信
    Service(一):认识service、绑定Service
    计划(四)
    Android studio 安装过程中遇到的问题
    UFLDL 教程学习笔记(四)
    opencv之dft及mat类型转换
    《第一行代码》(四)
    《第一行代码》
    计划(三)
  • 原文地址:https://www.cnblogs.com/zgqdbxb/p/7881069.html
Copyright © 2011-2022 走看看