我在模板中展示libraryPrep对象的模态视图,就像这样:
if (_.isUndefined(this.libraryPreps)) {
this.$el.html(this.template({ }));
} else {
this.$el.html(this.template({ libraryPreps: this.libraryPreps.toJSON() }));
}
当我有一个libraryPreps对象时,else语句就会起作用。在我的模板中,我像这样使用它:
<select id="libraryPreps" >
<% if (!_.isUndefined(libraryPreps)) { %>
<% _.each(libraryPreps, function (libraryPrep) { %>
<option value="<%=libraryPrep.id%>"><%= libraryPrep.name %></option>
<% }); %>
<% } %>
</select>
当我没有 libraryPreps 对象时,我的模板不会渲染,并且控制台会报错说 libraryPreps 未定义。我在模板中是否错误地检查了 undefined?我感觉在我的 backbone 模态视图中以同样的方式进行了检查,但是出现在实际模板中时就好像不起作用了。我的模板标记是否正确?谢谢。