使用下划线循环遍历集合
loop through collection with underscore
我不知道我在这个模板中做错了什么。
这是我的数据:
var movies = [
{
"title": "The Matrix",
"characters": ['neo', 'trinity', 'morpheous', 'agent smith'],
"year": 2001
},
{
"title": "The Simpsons Movie",
"characters": ['homer', 'marge', 'bart', 'lisa', 'maggie'],
"year": 20010
}
];
这是我的模板:
<script id="template" type="template/underscore">
<% _.each(movies, function (movie) { %>
<h1><%-title%></h1>
<ul>
<% _.each(characters, function(name) { %>
<li><%-name%></li>
<% }); %>
</ul>
<p><%-year%></p>
<% }); %>
</script>
以下是汇编:
var template = $.trim( $('#template').html() );
var content = _.template(template, movies);
console.log(content);
我得到了一个错误:电影没有定义。任何帮助都会很棒!
模板正在参数中查找关键字"movies",但找不到!您需要将movies
包装在context/params-var中,例如:
var content = _.template(template, {movies: movies});
模板无法"看到"上下文变量命名为"movies"的事实。您需要传递一个具有名为"movies"的实际属性的对象。
var context = {movies: movies};
var content = _.template(template, context);
相关文章:
- 循环遍历以数组为值的Javascript对象
- 遍历类元素数组,并在jquery中选择同级元素
- Jquery遍历表元素
- Chrome扩展:遍历不同的页面并收集数据
- 如何遍历包含对象的数组-javascript
- 遍历集合中的数组并在Backbone.js中显示
- MongoDB 遍历文档集合
- 遍历一个通用的 JavaScript 集合
- MongoDB - 不明白如何使用光标遍历集合
- 使用 async.each 异步遍历猫鼬集合
- 使用下划线循环遍历集合
- 循环遍历一个集合并返回一个新集合,其中组合了具有相同id的对象
- 循环遍历Firebase数据库记录的集合
- 主干循环遍历并从嵌套集合中获取值
- 循环遍历集合中的jQuery对象,而不为每次迭代初始化一个新的jQuery对象
- 循环遍历RaphaelJS集合
- this.each没有正确地遍历集合
- Javascript循环遍历对象集合
- Meteor - 返回集合 1 中的所有文档,然后查询集合 2 作为循环遍历集合 1
- 如何在Javascript中遍历Java集合