Handlebars.js不会编译/输出我的模板/数据

Handlebars.js wont compile/output my template/data

本文关键字:我的 数据 输出 Handlebars 编译 js      更新时间:2023-09-26

我正在摆弄Handlebars.js,并试图编译一个小模板。我只使用Handlebars.js,没有其他功能。我在本地的电脑上工作,而不是通过任何形式的服务器。

我的"html"看起来像这样。没有什么特别的。

<!doctype html>
<html>
    <head>
        <script src="js/vendor/handlebars.min-4.0.4.js"></script>
    </head>
    <body>
        <script id="menu-template" type="text/x-handlebars-template">
            <h1>{{title}}</h1>
        </script>

        <section id="menu">
        </section>

        <script src="js/menu.js"></script>
    </body>
</html>

我的JS是

var source = document.getElementById('menu-template').innerHTML;
var template = Handlebars.compile(source);
var data = {title: "test"};
document.getElementById('menu').innerHTML = template(data);

看起来template()没有返回任何内容,除了看起来像空字符串的内容外,我没有得到任何结果。

我已经玩了几个小时了,在互联网上搜索答案,但没有结果。

我在这里做错什么了吗?

//编辑添加了html页面的其余部分。

代码似乎是正确的,只需确保Handlebars.js文件正确地包含在现有的脚本标记之前。

Handlebars CDN参考:https://cdnjs.cloudflare.com/ajax/libs/handlebars.js/4.0.4/handlebars.js