我编写了一个带字符串的函数,并从骨干模型返回信息。但是,它不是直接从模型中提取直接属性,而是使用属性来形成更复杂的数据 - 例如,日期解析或获取用于特定类型对象的正确图标 -
// returns a parsed date modified with format MM/DD/YYYY
parseString("dateProperty:MM/DD/YYYY:dateModified");
// returns the HTML needed to display an icon based on the model type.
parseString("icon:type");
现在我在模板本身内调用我的解析函数 -
<div>Date modified <%= parseString("dateProperty:MM/DD/YYYY:" + dateModified) %></div>
但是我希望能够自动将我的解析功能应用于每个值,而不是仅仅推送我的Backbone模型并直接应用这些属性。
基本上,我希望能够使用我的模板执行此操作 -
<div>Date modified <%= dateProperty:MM/DD/YYYY:dateModified %></div>
将dateProperty:MM/DD/YYYY:dateModified
发送至parseString
。
这是一个相当大的Backbone设置的一部分,parseString
函数在我用来构建我的模型和集合的整个JSON中使用;如果模板中字符串的行为相同,我会喜欢它。
答案 0 :(得分:1)
如果您真的想要这种语法,我认为您最好的选择是&#34;复制&#34; {1}代码中的下划线,并在那里添加对自定义语法的支持。
如果你的语法更适合像函数调用那样的JavaScript
_.template
还有一些其他选项(全局,在模板<%= z$("dateProperty:MM/DD/YYYY:dateModified") %>
语句中的对象中混合等)。就目前而言,你几乎必须自己实现它。
或者你可以采用更有特色的模板语言。