我试图在javascript中使用twig模板进行渲染而根本没有运气。控制台没有给我任何错误,模板也没有被渲染。
我做错了什么?
代码:
import Twig from 'twig';
fetch(videos).then(res => res.json())
.then(data => {
data.items.forEach(item => {
Twig.renderFile('./themes/mytheme/views/components/thumbnail.twig', {item:'item'}, (err, html) => {
html;
});
});
答案 0 :(得分:0)
我不确定你在哪里使用Twig
(后端或前端)但我认为你的问题是你正在尝试编译twig file
并将编译结果放入某个元素中。我在回答你之前尝试使用twig
,似乎Twig.rendering
不是渲染方法。它是模板文件编译方法。因此,html
范围内的renderFile
是编译结果。你必须以某种方式将它放入元素中。由于html
是字符串,html;
将不执行任何操作。
实际上,您可以使用console.log(html)
查看结果。 (它将是html字符串。)。
只需将方法添加到范围中即可使用html
。然后,它应该工作。
renderFile
document.getElementById('container').innerHTML = html