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

  • 相关阅读:
    前端性能优化(2.1 代码分离——入口起点 entry point)
    前端性能优化(prefetch, preload, dns-prefetch, defer, async)
    Golang-函数
    Golang复合类型-map
    Golang复合类型-切片
    Golang复合类型-数组
    Golang基础语法-goto语句
    Golang基础语法-跳出循环
    vueRouter学习笔记
    通过ES6实现个模板操作
  • 原文地址:https://www.cnblogs.com/zgqdbxb/p/7881069.html
Copyright © 2011-2022 走看看