我试图在基于http://underscorejs.org/#template和其他教程的以下代码上使用underscore.js模板函数

json = {"data": [{"img0": "image.jpg"}]}
var compiled = _.template("image: <%= img0 %>");
compiled(json.data[0]);
document.getElementById("albums").innerHTML = compiled();


但是我得到了这个错误:

Uncaught ReferenceError: img0 is not defined


你能告诉我问题是什么吗?

最佳答案

调用模板函数时需要传递参数,



var json = {"data": [{"img0": "image.jpg"}]};
var compiled = _.template("image: <%= img0 %>");

document.getElementById("albums").innerHTML = compiled(json.data[0]);

<script src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.3/underscore-min.js"></script>
<div id="albums"></div>

09-17 01:44