【发布时间】:2016-09-09 04:30:17
【问题描述】:
我一直在与 Assemble 团队就这个问题进行反复沟通,他们认为这似乎是实施问题而不是错误。
基本上,我有一个 assemble 设置(不是 grunt-assemble),我试图通过 assembles YAML front-matter 将 YAML 文件中的一些数据拉入车把模板,然后将其传递给部分渲染。
我在记录汇编数据上下文时得到的是,前面的变量是未定义的。
与其浏览我所做的一切并在此处编写 sn-ps 代码,您可以在此线程中查看对话历史记录、代码 sn-ps 以及迄今为止尝试过的所有事情:https://github.com/assemble/assemble/issues/758
我还在我的 github 上创建了一个公共演示存储库,供任何想要将其拉下/分叉以进行进一步调查的人使用。
https://github.com/tgdev/assemble-yaml-demo
为什么前面的lodash模板返回的是undefined,而不是外部YAML文件的内容?
2016 年 11 月 9 日更新:使用 json 似乎可以正常工作
将 yml 文件中的数据更改为 json(扩展名为 .json)会按预期使用 tools/templates.js 中的前端中间件呈现,因此 assemble 和/或 handlebars 似乎在解析 yml 文件时出现问题。
这是我正在测试的主要 yml 文件的副本:
content: >
<h2>Page sub heading</h2>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
<p>
<img src="http://placehold.it/1170x658" alt="" class="align-left" />
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
</p>
<p><img src="http://placehold.it/1170x658" alt="" class="align-right" />
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
</p>
所以现在,我的问题是,为什么车把模板的 assemble front-matter 中的 lodash 模板不能解析 yaml 文件(未在日志中定义)?
【问题讨论】:
-
是的,虽然“有人……”的问题只能用“是”和“否”来正确回答(而且不是关于编程,而是关于人们的能力)。直接提问比较好。
标签: handlebars.js yaml templating assemble