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 页面了。

  • 相关阅读:
    Sublime Text2 运行 wxPython
    python BeautifulSoup 安装
    py2exe 打包 MatPlotLib Python
    Pydev无法导入新python模块的解决方案
    WxPython 颜色列表
    股票 API
    (转)Python数组定义
    关于.NET中委托与事件实现整理
    《人月神话》读书笔记
    平面图网络流
  • 原文地址:https://www.cnblogs.com/zgqdbxb/p/7881069.html
Copyright © 2011-2022 走看看