次の質問があります。テンプレートをロードするための次のコードがあります。
$.Mustache.load( "./templates/news/home.tpl" );
それは次のとおりです。
function load(url, onComplete)
{
return $.ajax({
url: url,
dataType: options.externalTemplateDataType
}).done(function (templates)
{
$(templates).filter('script').each(function (i, el)
{
add(el.id, $(el).html());
});
if ($.isFunction(onComplete)) {
onComplete();
}
});
}
クリックすると、他のページに移動します。
$("body").append($.Mustache.render(pageId + "-template", data));
それは次のとおりです。
function render(templateName, templateData) {
alert(!has(templateName));
if (!has(templateName)) {
if (options.warnOnMissingTemplates) {
$.error('No template registered for: ' + templateName);
}
return '';
}
return getMustache().to_html(templateMap[templateName], templateData, templateMap);
}
したがって、次のようになります: if (!has(templateName)) テンプレートがロードされていないため、問題は何ですか?