如果在向下传递到子部分(在assemble.io的上下文中)时,如何修改部分数据? 用法是这样的:
<!-- index.hbs -->
{{> heroImage src="img.jpg"}}
<!-- heroImage.hbs -->
<div>{{> responsiveImage srcset=src+"480w"}}</div>
<!-- responsiveImage.hbs -->
<img srcset={{srcset}} />
我只能传递src
数据,但不能使用和修改数据,例如src + "something"
或src"something"
。
答案 0 :(得分:1)
如果您希望在小胡子中执行字符串连接,则需要使用helper方法并将其作为sub expression调用。
这样的辅助方法可以简单如下:
Handlebars.registerHelper('concat', function () {
return Array.prototype.slice.call(arguments, 0, -1).join('');
});
你的heroImage.hbs部分会以下列方式使用这个助手:
<div>{{> responsiveImage srcset=(concat src " 480w")}}</div>
我还创建了一个示例fiddle。