Node.js 的模板引擎 [关闭]

2023-12-12

我想知道 Node.js 的最佳模板引擎。 目前我正在使用 jade 引擎和 node.js。

读完本文后出现困惑

https://github.com/baryshev/template-benchmark

请给我推荐最好的

Thanks.


没有最好的视图引擎。最佳视图引擎的标准基于模板引擎必须实现的实际需求以及使用它的人。例如,很多人真的很喜欢 Jade 视图引擎,但也有很多人认为它不好,因为他们不喜欢其语法。您应该遵循的优先事项很简单:

  1. Syntax:您喜欢视图引擎为您提供的语法吗?
  2. Features:视图引擎是否具有您希望它执行的所有操作(例如包含、变量、过滤器)?
  3. Learning: 学起来难吗?如果你有设计师,他们能理解吗?工具?
  4. 社区:是否有社区或可以联系到的人可以帮助解决问题?
  5. 表现:视图引擎是否编译和缓存?如果没有,这是否really matter?

请注意,当您在生产模式下运行节点时(NODE_ENV=生产),大多数视图引擎会自动进行编译和缓存。现在您应该检查不同风格的视图引擎,并根据项目的标准决定您最喜欢的内容(例如玉石、车把、EJS、Gaikan)。

Update: 我查看了基准测试并决定将我自己的视图引擎合并到其中(Gaikan)。可以在这个地址看到forkhttps://github.com/Deathspike/template-benchmark包括结果。如果您完全为了性能,这会增加另一个有价值的选择,但我建议坚持我上面列出的优先事项。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Node.js 的模板引擎 [关闭] 的相关文章

  • 如何处理对象字面量?

    我是 Javascript 新手 试图提取存储在对象中的一些文本 该对象被定义为对象字面量并传递给 a 中的函数调用该函数 脚本 和对象 具有以下结构 foo query count 2 created 2009 07 25T08 17 5
  • GWT - 找不到入口点类

    我最近开始开发另一个 GWT 模块 因此 我创建了一个包 其中包含所有新类和一个实现新入口点的特定类 我将 gwt xml 修改为新的入口点 当我编译时 出现以下错误 GWT Compiling client side code WARNI
  • 将 HTML 表导出到 Excel JavaScript 函数添加选择文件名

    我有以下将 HTML 导出到 Excel 的函数 function generateexcel tableid var table document getElementById tableid var html table outerHT
  • 如果未选中所有复选框,则禁用按钮;如果选中至少一个复选框,则启用该按钮

    我有一个表格 每行都有一个复选框 下面有一个按钮 如果至少选中一个复选框 我想禁用该按钮 tbody tr td td tr tbody
  • Angular ui - 选项卡控制器执行多次

    当我单击一个选项卡时 相应的控制器会执行 4 次 为什么 E g DetailsPersonController s init函数执行了4次 仅应在加载选项卡视图后执行 HTML 标签
  • VS Code,更改调试器的 NodeJS 版本

    我想将 VS Code 的 NodeJS 版本从 4 5 0 更改为 7 7 2 专门针对不同的项目 我在Mac上使用nvm 并且我有上面提到的两个版本 它们用于不同的项目 尽管我可以使用 nvm 从终端进行更改 但 VS Code 使用默
  • Node-Webkit在不同窗口启动功能

    我的 node webkit 应用程序由一个控制窗口和一个演示窗口组成 控制窗口收集数据并最终通过window open功能 演示文稿窗口现在可以访问global多变的 现在我想通过创建 SVG 元素等来呈现该信息的图形表示 我已经有一个
  • 使用来自外部 JS 文件的 Google Analytics 异步代码

    我正在尝试将 Google Analytics 跟踪代码的异步版本添加到网站 我想将 JavaScript 保存在一个单独的文件中 并从那里调用它 这是我的 js 文件中当前的内容 function addLoadEvent func va
  • node.js 本机插件 - 包装类的析构函数不运行

    我正在用 C 编写一个 Node js 插件 我使用 node ObjectWrap 包装一些类实例 以将本机实例与 JavaScript 对象关联起来 我的问题是 包装实例的析构函数永远不会运行 这是一个例子 point cc inclu
  • 使用 Phantom.js 将文件加载到 IMAGE 对象中

    我正在尝试加载图像并将其数据放入 HTMLImage元素但没有成功 var fs require fs var content fs read logo png 读取文件的内容后 我必须以某种方式将其转换为图像或将其打印到画布上 我试图使用
  • 有没有可靠的方法在 IE11 中使用 ctx.drawImage() ?

    我有一个脚本 可以根据数据查询创建动态 SVG 图形 我需要将它们粘贴到 PDF 中 为此我使用 jsPDF 不幸的是 jsPDF 自己的 addSVG 似乎不起作用 所以我花了一些时间尝试使用画布将 SVG 转换为 PNG 我似乎可以将
  • sails-mongo 适配器,标准化错误消息

    我正在使用 sails mongo 适配器尝试 sailsJs 和 mongodb 将验证添加到模型后 当验证失败时 我会收到以下响应 Users js 模型 module exports schema true attributes na
  • 纱线安装抛出错误请求失败“404未找到”

    我已经在我的笔记本电脑上反应了本机项目 当我将项目转移到我的电脑并运行yarn install时 我使用yarn安装了一些模块 一些使用npm安装了 我得到 一个意料之外的问题发生了 https registry yarnpkg com j
  • 获取此 contenteditable 元素中的当前行和行索引?

    我有一个这样的元素 span line 1 line 2 line 3 line 4 line 5 span 假设用户正在编辑 第 4 行 如何获取该 contenteditable 元素中的当前行和行索引 在插入符号位置 这是使用选择属性
  • 使用 RaphaelJS 确定图像何时加载到 svg 中

    我正在尝试弄清楚如何确定 svg 图像何时加载到浏览器中 我正在使用 Raphael JS 并且我已经尝试过 var image paper image path 0 0 10 10 image node addEventListener
  • nodejs npm 安装socket.io 错误

    我是新的 Node js 开发人员 我尝试简单的聊天项目 所以我想使用 NPM 安装 socket io 但出现此错误 我用的是ubuntu 12 04 ubuntu Ubuntu 1210 Masa st blog npm install
  • Node Sass 缺少多个节点版本的绑定

    我正在使用 nvm 在节点版本之间切换 我的package json scripts dev rm rf public assets hot update js NODE ENV development webpack env dev pr
  • Phantomjs 可以工作,但速度很慢

    我正在尝试使用 PhantomJS 截取网页的屏幕截图 具体来说 我正在使用捕获的示例espn com from this http skookum com blog dynamic screenshots on the server wi
  • 在 javascript/jquery 中从 JSON 中删除元素

    我在 javascript 中从 JSON 对象删除数据时遇到问题 我正在动态创建此 JSON 并且删除也将动态进行 下面是我的 JSON 和我所处的情况 brands 51 2046 53 67 64 现在 我必须从中删除 53 我正在使
  • 街景中标记上的 InfoWindows

    根据 Google 文档 当您在地图上创建标记时 市场也会 复制 到地图的街景版本上 但是 onClick 事件绑定不会被复制 或者至少看起来不会被复制 因此我无法在 StreetView 中打开标记上的 InfoWindow 理想情况下

随机推荐

  • 如何生成相关的 Uniform[0,1] 变量

    这个问题与如何生成具有不同分布的相关变量的数据集 在 Stata 中 假设我创建一个遵循 Uniform 0 1 分布的随机变量 set seed 100 gen random1 runiform 我现在想要创建第二个随机变量 它与第一个随
  • JAXB 错误:有多个映射。由于两个对象工厂具有相同的 Bean

    我有两个 Maven JAXB 项目 A 主要 Maven JAXB 存根 XSD 项目 其中包含 BASKET xsd B Maven JAXB 存根想要将 BASKET xsd 包装在自己的对象中的用户项目 这会产生两个对象工厂 不同的
  • 如何在 GitHub 上合并远程更改?

    第一次尝试 Github 推送时出现以下错误 rejected master gt master non fast forward error failed to push some refs to email protected me m
  • masm32 调用 stdout 没有输出

    我正在使用 masm32 在 Windows 7 上编译和链接 它与下面的代码一起工作得很好 然而 调用 stdOut 并不是简单地在命令提示符上打印任何内容 我究竟做错了什么 386 model flat stdcall option c
  • 如何制作一个互动节目?

    我正在学习 Ocaml 我需要创建一个可以通过以下方式与用户交互的程序 Program Welcome User command1 arg1 arg2 program The answer is User command2 arg prog
  • 在这种情况下如何在 Racket 上订购我的累积变量?

    出于教育原因 我使用 Racket 进行编码 我收到了一项任务 其中我应该创建一个函数 在没有过滤器的情况下 它将接收一个列表作为输入 并仅返回另一个列表 其中包含第一个列表的偶数 我提出了迭代过程的递归定义 define add even
  • 使用向量的 r 子集数组

    我觉得这个问题应该已经有了答案 但我没有找到 我有一个数组 我想使用向量对其进行子集化 我知道如何以困难的方式做到这一点 但我确信一定有一种简单的方法 有任何想法吗 这是我的例子 dat lt data frame a rep letter
  • Spring Boot + Hibernate + Postgres - 不创建表

    我正在尝试基于实体生成架构表 应用程序正确启动 生成 SQL 但没有结果 没有创建任何表 怎么了 我在没有 Spring Boot 的情况下在普通 Spring MVC Hibernate JPA 中使用了相同的设置 并且一切正常 这是我的
  • 为什么Python的嵌套函数不称为闭包?

    我在 Python 中见过并使用过嵌套函数 它们与闭包的定义相匹配 那么为什么它们被称为 嵌套函数 而不是 闭包 呢 嵌套函数不是闭包 因为它们不被外部世界使用吗 UPDATE 我正在阅读有关闭包的内容 这让我开始思考这个关于 Python
  • 需要帮助将 BMP 图像转换为 [R] 中的矩阵吗?

    我对 R 非常陌生 我想知道是否有一种简单的方法可以将 BMP 图像转换为 R 中的矩阵 主要是 我正在寻找任何可以提供帮助的包 矩阵中每个元素的值对应于颜色 在 CRAN 软件包列表中搜索 bmp 就会出现bmp和其他一些 为了简洁起见
  • 禁用用户在 BottomSheet 上拖动

    我正在尝试禁用用户拖动BottomSheet 我想禁用的原因有两件事 1 它可以防止ListView向下滚动 2 我不希望用户使用拖动来消除 而是使用BottomSheetView 这就是我所做的 bottomSheetBehavior B
  • 基本条件覆盖与复合条件覆盖

    I m trying to get my head around the differences between these 2 coverage criteria and I can t work out how they differ
  • 将 Scrapy over Splash 与 HTTP 代理结合使用时出现“500 内部服务器错误”

    我正在尝试使用 Splash 以渲染 JavaScript 和 Tor 通过 Privoxy 以提供匿名性 在 Docker 容器中爬行 Scrapy 蜘蛛 这里是docker compose yml我正在为此使用 version 3 se
  • 为任何基准生成线图?

    我花了很多时间未能找到一个折线图生成器来生成我的基准测试结果 我只想将其插入 我尝试了很多类似谷歌的图表 API 但它仍然看起来令人困惑或看起来不优雅 我一无所知 Examples of benchmark images I wished
  • 使用 strings.xml 中的字符串数组填充 string[] 时出现问题

    编辑 哇 不知怎的 我用我问的另一个问题替换了这个问题 很高兴有这个回滚功能 这个具体问题涉及我的吸气剂上一个问题 public class Impacts extends Activity implements View OnClickL
  • 尝试失败后暂时禁用登录

    我正在尝试为我的应用程序创建一个登录屏幕 在 3 次登录尝试失败后禁用登录按钮 5 分钟 但是 在我的应用程序中 可以通过关闭应用程序并再次启动来轻松地再次启用该按钮 我该如何解决 Code public class LogIn exten
  • 从文本文件中提取表格

    我正在尝试从文本文件中提取表格 并在这里找到了几篇解决类似问题的早期帖子 然而 似乎没有一个能够有效地解决我的问题 我发现的最有帮助的答案是我之前的问题之一 R 读取 csv 文件时删除页眉 页脚和零星列标题 示例虚拟文本文件包含 gt g
  • 在 UCM 和基本 ClearCase 之间进行选择

    哪一个更好 UCM 还是基础 ClearCase 对于并行开发 我们需要UCM吗 在 ClearCase 基础上使用手动分支是否容易出错 串行开发没有意义吗 在同一个分支机构工作 一个并不比另一个更好 UCM 代表了一组不同的最佳实践 您可
  • 错误 System.DllNotFoundException:使用 Visual Studio for Mac 的 Azure 存储上的 fusion.dll

    当我关注这个公会时 我正在使用 Visual Studio for Mac https learn microsoft com en us azure storage blobs storage dotnet how to use blob
  • Node.js 的模板引擎 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心以获得指导 我想知道 Node js