Ste*_*ino 2 javascript referenceerror handlebars.js
我是JS的新手,之前从未尝试过Handlebars.我正在尝试一个教程中的一个非常简单的例子.我已经handlebars-v4.0.5.js从Handlebars网站下载并将其包含在我的页面中,如下所示,以及我预编译的模板name-table.js.我正在努力完成本教程,但我不能,因为当我运行以下代码时,我得到ReferenceError: Handlebars is not defined了我不能理解的生活,如果我从Handebars自己的网站下载的文件无论如何都是有效的.
<html>
<head>
<meta charset='UTF-8'>
<title>Test Page!</title>
<script type='text/javascript'>
function init() {
document.getElementById('button').addEventListener('click', buttonClick, false);
}
function buttonClick() {
var injection = Handlebars.templates['name-table'];
document.getElementById('button').innerHTML = injection;
console.log('hello, world.');
}
window.addEventListener('load', init, false);
</script>
</head>
<body>
<button id='button'>Button</button>
<div id='content'></div>
<script type='text/javascript' rel='js/handlebars-v4.0.5.js'></script>
<script type='text/javascript' rel='js/name-table.js'></script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
编辑:
我标记的答案解决了问题. 此代码中出现了另一个错误,我想让任何阅读此内容的人知道var injection此代码中定义的是函数,而不是我想到的字符串.如果rel更改src为给出的答案,并且如果我们使用document.getElementById('button').innerHTML = injection();(注意parens),此代码将起作用.
Sim*_*ell 10
您没有加载Handlebars(或您的名称表脚本).您目前有以下标记:
<script type='text/javascript' rel='js/handlebars-v4.0.5.js'></script>
<script type='text/javascript' rel='js/name-table.js'></script>
Run Code Online (Sandbox Code Playgroud)
您应该使用src属性而不是脚本标记的rel属性.
<script type='text/javascript' src='js/handlebars-v4.0.5.js'></script>
<script type='text/javascript' src='js/name-table.js'></script>
Run Code Online (Sandbox Code Playgroud)
在Mozilla的文件没有指定rel属性为有效的脚本标记属性.
| 归档时间: |
|
| 查看次数: |
13851 次 |
| 最近记录: |