问题标签 [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 投票
2 回答
56 浏览

jinja2 - Jinja2 / Nunjucks:对 for 循环元素的不同处理

我有一个清单:

我想将它显示为一个表格,其中每个第 4、第 5 和第 6 个元素都以自己的方式设置样式,例如:

我将列表批处理为 6er 行,以将其显示为如下表格:

但我不知道如何做我上面描述的事情。有人有想法吗?

0 投票
0 回答
457 浏览

javascript - 从 {{ mustache }} 迁移到 Vue

我们使用 mustache 将外部文件中的模板加载到布局中,这没问题,但我们必须使每个模板独立,样式、JS 和 html 在同一个文件中,这对于 mustache 是不可能的,我们使用单个文件转移到 VueJs零件。

在这种情况下使用 Vue 是一个不错的选择,还是我们缺少一些轻量级的 JS 模板引擎?

https://github.com/furqanfreed/MustacheJs-to-VueJs

0 投票
1 回答
24 浏览

node.js - 如何使用 Handlebars 中当前上下文的 @key 从其他数组中获取元素?

我有这两种情况:

现在我正在尝试将每一个渲染businessHours.days成一个表格,每一行包含一个单元格中的日期名称和dow另一个单元格中的小时数。我试着这样做

但它不会呈现当天的名称。我没有转换businessHours.days成普通对象,因为对象的属性不是按固定顺序存储的。

0 投票
0 回答
261 浏览

go - 在 Go 模板中保持对 map 的无序迭代

我的问题:我有一个 map[string]Type,我想在模板中对其进行迭代,以保持更广泛语言的随机排序行为。

Go 模板库在这里https://golang.org/pkg/text/template/#hdr-Actions声明:

如果值是一个映射并且键是具有定义顺序(“可比较”)的基本类型,则元素将按排序键顺序访问。

我知道我可以通过在初始映射中声明一个单独的键 [] 字符串来解决此问题,然后对其进行迭代,即:

但是我希望这是模板库的一个完全原生的、受支持的功能,以匹配更广泛语言的行为,但它似乎根本不受支持。

有关完整示例,请参见此处的操场:https: //play.golang.org/p/1oTI56G5pr9

0 投票
1 回答
375 浏览

php - Symfony 3 视图重载控制器继承

假设我有 2 个控制器,内容和新闻:

如果新闻控制器的 indexAction 视图不存在(indexAction 继承自父类),我希望 Symfony 使用 Content 控制器的视图(indexAction)。我怎样才能做到这一点?Symfony 总是尝试渲染视图 News/index.html.php,但如果这个视图不存在,我希望 Symfony 渲染 Content/index.html.php。

是否可以告诉 Symfony 渲染引擎这样的事情:如果存在文件 News/index.html.php 取这个,否则取 Content/index.html.php

我使用的是 PHP 模板引擎,而不是 Twig。

我们目前正在使用 Zend 框架,您可以简单地添加一个脚本(视图)路径,如此处所述在 Zend 框架中查看重载

0 投票
1 回答
24 浏览

node.js - 在 Handlebars+Express+Nodejs 中渲染多个实例

请帮助我完成以下操作:如何渲染来自任何数据库的多个实例(在我的情况下来自 Gcloud 数据存储,在它是 MongoDB 之前,但实际上并不重要),据我所知,Handlebars 可以接受/解析对象或数组或对象,所以现在我这样做我正在导入返回承诺的函数

我在另一个里面使用,这是正确的方法吗?我没有看到任何其他方式来解决承诺并将其传递给 res.render

它工作正常,但只是为了确定/更专业

0 投票
1 回答
28 浏览

javascript - 如何使用 Node-express 将通过页面 B 的表单发布的数据呈现到页面 A?

问题

大家好。过去半小时我一直在绞死试图解决撕裂方法。问题是当我通过页面 A 的表单发布数据并希望在页面 B 中呈现这些数据时,我不断收到特定错误“无法获取特定 URL”。虽然我使用的是 POST,但我一直在 URL 中获取数据.

图片 1/3 图片 2/3 图片 3/3

users.js 索引 .js用户.ejs index.js

更新

问题出在表单结构上。

它应该method="POST"代替type="POST".

0 投票
1 回答
611 浏览

javascript - 如何用 EJS 和 11 做组件组合(包含在包含中)?

我正在使用Eleventy,一个静态站点生成器来构建一个网站。它支持很多模板语言,但EJS看起来是最好的,因为它“只是 JavaScript”,除了,我不知道如何进行组件组合,或者它是否可能。可以说,EJS 文档严重缺乏。

我想要实现的目标类似于您在 React 或 Vue 中使用props.childrenor执行的操作<slot>,您可以在其中组合组件,但显然可以在这里使用部分组件来完成。

例如,假设我有一个网格项部分,它接受它可以呈现的大小、它的标签名称和“子项”,例如:

然而,即使是上面的例子也有点限制,所以我真正想要实现的是:

这可能吗?我是从错误的角度接近这个吗?

Eleventy 支持使用 Nunjucks 和 Liquid 的Paired Shortcodes 解决此问题,但是这两种模板语言似乎都受到严重限制,例如您甚至无法创建数据对象。

0 投票
2 回答
6045 浏览

php - 致命错误:未捕获的错误:找不到类“Twig_Autoloader”

最近我通过 Composer for PHP7.2 安装了 Twig2.0,运行代码时出现这些错误,

(!)致命错误:未捕获的错误:第 4 行的 C:\wamp64\www\php-twig\example.php 中找不到类 'Twig_Autoloader'

( ! ) 错误:在第 4 行的 C:\wamp64\www\php-twig\example.php 中找不到类 'Twig_Autoloader'

我浏览了 GitHub 中的问题。

这是我的PHP代码,

和 index.twig

如何解决这个问题?
提前致谢!

0 投票
0 回答
392 浏览

reactjs - 我可以在后端使用 React 和/或 JSX 作为任何文件扩展名的模板语言吗?

假设在我的后端.ext,我有想要用模板语言预处理的具有任意扩展名的文件。React 和/或 JSX 可以是那种语言吗?例如:

我想将这些文件编译成一个文件:

请注意,它不适用于前端,也不是 HTML。它旨在为后端文件提供一些组织和结构(并解决一些超出此问题范围的问题)。

我做了一个简短的搜索,但所有结果都是关于 SSR 的,即为前端渲染 html 文件,这不是我的情况。

我之所以问是因为我在反应方面几乎没有经验,而且我不想投入大量时间来学习它,只是为了发现这是不可能的。