我的观点确实很奇怪。我在node.js,express和express-handlebars中使用了把手。我很难在.hbs中编译模板并将数据传递给它。因此,html正在渲染,但我无法传递数据。我做了一个简单的例子来测试和简化我的问题:
<div id="test"></div>
<script id="test-template" type="text/x-handlebars-template">
<div>
Is this Test is working?
{{test}}
</div>
</script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/handlebars.js/4.0.11/handlebars.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script>
(function() {
var testSource = $('#test-template').html(),
testTemplate = Handlebars.compile(testSource),
testPlaceholder = $('#test');
testPlaceholder.html(testTemplate({test:'this test is a success'}));
})();
</script>
因此,摆弄代码的效果很好。但是在我的示例中,我得到了以下结果:
此测试是否有效?错误
唯一的不同是我对express-hanldebars模块的了解。所以出现了问题吧?我也用谷歌搜索,但没有找到有用的东西。