node.js - 让 Liquid-Node 和 Express 更好地发挥作用

标签 node.js express liquid

Liquid-Node 是一种基于 promise 的模板语言,可用于在异步数据库调用(除其他外)之后创建模板。没有对 ExpressJS 的内置支持。

让 Express 使用 Liquid-Node 作为其 View 引擎的最佳方式是什么?

最佳答案

我想出的最好的方法是使用 Vow-fs 作为 fs Promise(在 Livescript 中),并假设使用扩展名“.liquid”调用 View :

vowfs = require \vow-fs
Liquid = require \liquid-node

app.engine \.liquid, (filename, options, fn) ->
  vowfs.read filename
  .then (res) ->
    content = res.toString!
    template = Liquid.Template.parse content
    template.render options
  .then (res) -> fn null, res

关于node.js - 让 Liquid-Node 和 Express 更好地发挥作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17900497/

相关文章:

日期比较逻辑/液体模板过滤器中

ruby - 为具有嵌套标签的自定义标签编写 jekyll 插件时出现问题

Ruby:为什么我的成员没有在初始化中设置?

javascript - 使用 mysql 的 nodejs session 处理程序

javascript - 不分阶段工作。正常吗?

express - 如何在没有模板引擎的情况下制作 Express 网站?

javascript - 关于 nodejs server.listen()

javascript - node.js TypeError : path must be absolute or specify root to res. sendFile [无法解析JSON]

javascript - 令人沮丧的语法错误

node.js - 如何将多个子域重定向到同一个正在运行的 Express 应用程序