我在将模型数据从主干视图传递到下划线中的模板时遇到问题。我想将一个数组传递到模板中,以便我可以使用_.each
. 我的代码如下:
模板设置
_.templateSettings = {
interpolate: /\{\{(.+?)\}\}/g,
evaluate: /\{\{([\s\S]+?)\}\}/g
};
插值 is {{ }}
和评估 is {[ ]}
。除非我的正则表达式不正确
看法
el: $('#assasinationBackbone'),
events: {
'click #newHitJob': 'addNewHitJob'
},
initialize: function() {
},
addNewHitJob: function() {
var hitMen = new HitManList();
var template = _.template($('#newHitJobTemplate').html());
hitMen.fetch({
success: function() {
$('#newHitJobForm').html(template(hitMen.toJSON()));
return hitMen; //CANNOT REMEMBER WHY I PUT THIS HERE (NO SIDE EFFECTS)
}
});
});
我没有在视图中将模板定义为template:
,而是在addNewHitJob
属性中定义了它。
1. 这是正确的吗?我这样做是因为我将拥有多个模板。上述模板如下
模板(在 Jade 中),如果需要,我可以翻译成 html
.span4#newHitJobForm
script#newHitJobTemplate(type="text/template")
select#names
{[ _.each(hitman, function(name) { ]}
option(value="{{ name._id }}") {{ name.name }}
{[ }); ]}
2.据我所见,我的问题是传递hitman
给模板,但我不确定。有什么我想念的吗?