示例模板:
%input{ @attributes }
渲染示例:
@attributes = {:foo => :bar}
render :example_template
带haml的示例输出:
<input foo="bar">
我尝试使用带有JST['example_template']({attributes: {foo: 'bar'}}
的haml-coffe实现此功能,但它似乎没有像我预期的那样工作。
如何使用haml-coffee完全动态地提供所有属性?
答案 0 :(得分:2)
通过在Haml-Coffee中不支持提供对象来指定所有属性,您需要在编译时明确定义已知的所有属性:
%input{ foo: @attributes['bar'] }
并使用
呈现模板JST['example_template'](attributes: { foo: 'bar' })
如果您需要自由定义所有属性,我建议您在视图中设置它,例如
class ExampleView extends Marionette.View
ui:
foo: 'input[foo]'
onRender: ->
@ui.foo.attr(@attributes)