此示例借自 Backbone 目录演示应用程序 https://github.com/ccoenraets/backbone-directory/blob/master/web/js/utils.js#L11
// The Template Loader. Used to asynchronously load templates located in separate .html files
window.templateLoader = {
load: function(views, callback) {
var deferreds = [];
$.each(views, function(index, view) {
if (window[view]) {
deferreds.push($.get('tpl/' + view + '.html', function(data) {
window[view].prototype.template = _.template(data);
}, 'html'));
} else {
alert(view + " not found");
}
});
$.when.apply(null, deferreds).done(callback);
}
};
您可以使用字符串数组 [views] 和 [callback] 函数对其进行初始化。
我的问题是如何检查 window[view] (点击上面的链接到代码中的确切位置)如果(据我所知)之前没有被初始化?如果我不准确,请在评论中写下。