html - 在循环内部,非循环变量没有从 Markdown、Pandoc 和 YAML 中的循环变量中获取数组
问题描述
仔细观察最后一个变量mais
,它将从变量中获取数组icones
:
- Markdown 文件中的 YAML:
---
gnome: 'gnome'
icones:
- {nome: actions}
- {nome: apps}
- {nome: devices}
- {nome: mimetypes}
- {nome: places}
- {nome: status}
mais:
- {url: 'filename.com/$icones.nome$/logo=$gnome$'}
---
- 在另一个 Markdown 文件中:
$for(icones)$
<img alt="$icones.nome$" name="$icones.nome$" src="https://$mais.url$"/>
$endfor$
item会成功获取到所有变量,但是变量$mais.url$
不会获取到数组变量。
结果如下:
<img alt="actions" name="actions" src="https://"/>
<img alt="apps" name="apps" src="https://"/>
<img alt="devices" name="devices" src="https://"/>
<img alt="mimetypes" name="mimetypes" src="https://"/>
<img alt="places" name="places" src="https://"/>
<img alt="status" name="status" src="https://"/>
它应该是这样的:
<img alt="actions" name="actions" src="https://filename.com/actions/logo=gnome"/>
<img alt="apps" name="apps" src="https://filename.com/apps/logo=gnome"/>
<img alt="devices" name="devices" src="https://filename.com/devices/logo=gnome"/>
<img alt="mimetypes" name="mimetypes" src="https://filename.com/mimetypes/logo=gnome"/>
<img alt="places" name="places" src="https://filename.com/places/logo=gnome"/>
<img alt="status" name="status" src="https://filename.com/status/logo=gnome"/>
解决方案
$icones$
仅指icones:
for 循环内的单个项目,即不在 的值内mais:
。同样, for 循环遍历$icones$
,因此$mais$
不引用mais:
序列的单个值。
你可以这样做:
mais:
- {url: {front: "filename.com/", back: "/logo=$gnome$"}}
接着:
$for(icones)$
<img alt="$icones.nome$" name="$icones.nome$" src="https://$mais.first.url.front$$icones.nome$$mais.first.url.back$"/>
$endfor$
推荐阅读
- ios - 更改我的 ios 应用程序的包标识符
- elasticsearch - Elasticsearch 对于“浮动”类型没有按预期工作
- mysql - 如何删除mysql中的所有外键
- mysql - 按特定列及其一天中的频率计数按顺序获取结果
- xamarin.forms - Xamarin Forms 中的简单 Firebase 身份验证问题
- android - Camerax 在服务中运行。如何在前台服务中获取生命周期所有者或在没有它的情况下运行?
- r - 聚类方法推荐
- image - 无法使用 Flutter 通道共享文件 - 缺少插件异常
- ios - 有什么方法可以快速从 vImage_Buffer 获取像素格式信息?
- mysql - WSO2 将默认数据库更改为 MySql