我在我的模板中显示 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 未定义的错误。我是否在模板中错误地检查未定义?我觉得我在主干模式视图中以同样的方式检查它,但由于某种原因,在我的实际模板中,它似乎不起作用。我的模板符号正确吗?谢谢。