问题标签 [templating-engine]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
8885 浏览

javascript - 带有 Backbone.js 的 JS 模板系统

我正在寻找一些可以与 MVC 框架(如 Backbone.js)一起使用的优秀模板系统

我知道一个这样的系统(jQuery 模板)。然而,由于某些原因,同样的已经停产,因此我正在寻找其他一些好的选择。

请从视图的角度提出足够灵活的建议。(例如,基于某些逻辑启用/禁用按钮的动态视图,基于某些逻辑具有不同样式的表格数据等)

0 投票
9 回答
135605 浏览

handlebars.js - Mustache.js 和 Handlebars.js 有什么区别?

我看到的主要区别是:

  • 车把增加#if, #unless, #with, 和#each
  • Handlebars 添加助手
  • 车把模板已编译(Mustache 也可以)
  • 车把支持路径
  • 允许使用{{this}}in 块(输出当前项目的字符串值)
  • Handlebars.SafeString()(也许还有其他一些方法)
  • 车把快 2 到 7 倍
  • 小胡子支持倒置部分(即if !x ...

(如果我对上述内容有误,请纠正我。)

我还缺少其他主要区别吗?

0 投票
3 回答
1130 浏览

php - php mvc + 模板引擎

我已经离开 PHP 世界一段时间了,现在我回来了。在 asp.net 中广泛使用了 mvc 模式,我很想在 php 中再次使用它。我在 2006 年使用了 codeigniter,它仍然是标准吗?我知道还有其他的,例如 Symphony 和 phpCake。

这些是我想要的功能:

  • 轻巧快速
  • 最好不是一个巨大的学习曲线
  • 不包括数据库查询优化
  • 包括模板引擎(例如 Smarty) - 我可以使用 Smarty,但我想知道是否有将 mvc 与模板引擎结合的产品。

现在的标准是什么?你会推荐什么符合上述标准?

0 投票
1 回答
230 浏览

javascript - 使用 Coldfusion 以面向对象的方法在哪里呈现 Ajax 搜索结果?

我正在更新一个 Coldfusion8/MySql 站点,其中包含从“意大利面条到对象”的相当复杂的搜索(= 单独的视图、控制器和进程 - 没有框架,一切都由 Jquery Mobile 处理)。

我需要通过 Jquery-AJAX 运行搜索查询,现在将搜索表单发布到我的 searchProcess.cfc,它执行数据库查询。

问题:
我不确定在哪里呈现结果?

结果将相当复杂(数据库有几百万条记录,40 个字段的行)并且应该以单个结果布局或多个结果布局文件结束。

我正在考虑在 cfc 中构建文件并通过cfsavecontent将它们交还,但我正在到处阅读这是一个禁忌......

那么有哪些替代方案呢?

我可以设置一个template_single.cfmtemplate_multi.cfm ,将搜索结果作为 AJAX 响应传回,然后从成功处理程序中触发另一个 AJAX 调用来调用模板,然后呈现第二次调用的输出。这似乎非常复杂,而且如果不传递大型数据集,我看不出我可以在哪里放置我的分页。

所以我正在寻找一些关于如何以面向对象的方式处理搜索结果的建议?

感谢您的输入!

编辑:
经过几个小时的谷歌搜索,我目前正在查看以下选项:
1.)运行单个数据库查询以返回分页结果 - 根据此处
2.)将具有 0-25 条记录的数据发送回 AJAX JSON
3.) 尝试在循环中使用模板 cf/js(长度为 1 或长度为 25) - 如此

这意味着仅对 JSON 中的 1-25 条原始记录进行数据传输。如果我尝试在成功处理程序中呈现,我不必 http 请求另一个模板。

这种方法有意义吗?

0 投票
1 回答
1256 浏览

javascript - 车把 registerPartial() 不起作用

这是我在JsFiddle上的代码

错误 - 未捕获的错误:找不到部分社交

PS。我已经包含了所有的库。

提前致谢。

0 投票
1 回答
304 浏览

php - 如何在 H2O 模板中编写单行注释

如何在H2O 模板中写单行注释?

Django 的模板引擎允许{# a single-line comment #}单行注释的语法,但这似乎在 H2O 中不可用。文档中没有它的踪迹,并且测试表明它不起作用。

有没有办法在 H2O 模板中写单行注释?或者有没有一种方法可以用最简洁的语法实现一个类似的标签?

0 投票
1 回答
213 浏览

node.js - Nodejs 模板系统文档

我想为 node.js 创建自己的模板系统(仅用于教育目的),但我找不到任何有用的信息。有什么好的教程可以帮助我吗?谢谢!

0 投票
2 回答
259 浏览

php - 有没有一个php模板引擎可以像asp.net一样工作

像 smart 这样的 PHP 模板引擎只为我们设计页面提供了一个 extends 方法。在 asp.net 中,我们可以扩展(使用母版页),也可以创建用户控件并在一个页面中包含不同的用户控件。有没有一个PHP模板引擎可以做这样的工作?

0 投票
1 回答
956 浏览

object - 在另一个 Twig 属性定义的值内插入 Twig 变量/属性

采取以下示例结构:

要访问,我通常会使用类似的东西:


问题:

插值变量无法识别,您会得到类似...libs/jquery/%7B%7B%paths.js/jquery.version7D%7D/jquery.min.js....

我试过了:

  • 'a': 'text{{b}}text',
  • 'a': {{ ('text' ~ b ~ 'text') }},
  • 'a': "{{ ('text' ~ b ~ 'text') }}",
  • 'a': "{{ (['text', b, 'text'] | join }}",
  • 'a': "{{ (['text', {{b}}, 'text'] | join }}"
  • 还有更多我忘记了

我知道属性()

关于它的文档不多,但据我所知,它必须是这样的:

对于一个级别来说会很好,但不是任意级别的深度。如果我有误解,请纠正我attribute()

0 投票
2 回答
316 浏览

php - 简单的 PHP 模板引擎,允许使用 PHP 表达式来发明自己的语言

我正在寻找一个简单的 PHP 模板引擎,它允许在替换中使用 PHP 表达式。模板应该只包含简单的变量替换而没有其他任何东西的“MVC 理想”通常会失败,常见的模板系统通过创建“变量过滤器”的语法(例如 Smarty 中管道之后的东西)来承认和响应,本质上是新的编程语言。

当我想在模板中做一些小的变量后处理时,我想写{strtolower(trim($a))}而不是{$a|strip|lower},只是因为我不想记住所有东西的两种语法(通常是两个名称)。我知道它可能会被滥用,但我完全有能力自己遵守 MVC,我不需要一种语言来强迫我这样做。这(使用本地语言表达式)是完全常见的事情,例如在 Python 模板引擎中。

另一方面,我对“PHP”的答案不感兴趣。即使使用替代语法 ( for:...endfor;) 和<?=. 我想要一个用于变量(表达式)替换的漂亮而简单的语法for,, if, 等。它实际上可能是 PHP 之上的一个非常薄的语法糖层。

是否存在类似于上述描述的内容?