Node/Express 中的 JSON 模板

Posted

技术标签:

【中文标题】Node/Express 中的 JSON 模板【英文标题】:JSON Templating in Node/Express 【发布时间】:2015-07-18 10:40:29 【问题描述】:

Node/Express 是否有像 RABL (https://github.com/nesquena/rabl) 或 JBuilder 这样的 JSON 模板引擎? (http://railscasts.com/episodes/320-jbuilder?view=asciicast)。我不是指像 Handlebars、Jade 或 Underscore.js 这样的 html 模板引擎。我的意思是一个 JSON 模板引擎。这些库简化了 JSON 的元素和关联的挑选和选择。

【问题讨论】:

我不知道,但是,由于 JSON 语法基于 javascript 对象,并且您正在编写 javascript,因此有很多工具可以单独使用 javascript 来转换您的数据转换成所需的 JSON 格式相对容易。如果您使用和谐标志来启用 es6,则更是如此。 是的,有一对...我不记得任何一个的名字,但它们确实存在。它与 Node.js 或 Express 没有任何关系。在此处查看此列表:github.com/tj/consolidate.js 它可能就在其中。 @Brad 这些都是 HTML 模板引擎,而不是 JSON。这些 cmets 听起来不屑一顾,但 RABL 有很大帮助(无论底层数据结构是什么)。我希望在不为每个查询编写一堆 underscore.js 样板的情况下获得等价物。 @ajbraus 嗯,我想我不明白。我以为您的意思是直接使用 JSON 作为文档结构的模板引擎。 @Brad 不。 RABL 允许您自定义对象并在 ORM 和 JSON 之间输出 JSON。 【参考方案1】:

看来终于有了! 这是它的链接https://www.npmjs.com/package/javelin 这也处于实验阶段,因此尚未准备好生产。

这是链接的摘录

javelin 带着几个主要目标出发:

一种在 RESTful API 中将视图逻辑与数据分离的简单、熟悉的方法 一种对应用程序数据有意义的简单、轻量级的模板语言 能够从同一视图以不同格式提供 API 数据

最后,这在很大程度上受到了 RABL 的启发。

希望有帮助!

【讨论】:

以上是关于Node/Express 中的 JSON 模板的主要内容,如果未能解决你的问题,请参考以下文章

通过 Node Express 将对象作为字符串而不是 JSON 发送

Node.js / Express / Mongoose - 如何发送 JSON 以及对象视图?

???? node ? express.js ??? json ?????????

Node Express 服务器中的 CORS 正则表达式

使用 fetch 的请求返回“typeerror: response.json is not a function”(ReactJS/node;express0 [关闭]

在 node/express + ejs 中将对象传递给客户端?