在带来大火的 Meteor 0.8 之前,我能够将对象传递给自定义块助手内容,如下所示:
return options.fn(object)
现在有了 blaze,块助手需要返回一个类似这样的模板。
return Template.someTemplate
我怎样才能实现旧的行为。我想要的是以下内容:
我使用块助手
{{#blockhelper argument="something"}}
{{somePartOfTheObject}}
{{/blockhelper}}
然后在 blockhelper 定义中,我想根据参数做一些事情,这将返回一个对象。
UI.registerhelper "blockhelper", () ->
object = getStuffFrom(this.argument)
return Template.someTemplate(object)
根据 blaze 的需要,我创建了一个最小的模板
<template name="someTemplate">
{{> UI.contentBlock}}
</template>
现在 blaze 不允许将对象传递给此模板,因此可以在块内容中使用它。
我怎样才能解决这个问题?
我知道流星方式是在控制器中获取对象。但由于我想将其用于原型设计框架,我希望能够直接从 blockhelper 创建所述对象或多个对象,因此有人可以传递将转换为对象的参数。