为什么模板不显示模型数据?

Why isn't a template displaying model data?

我们有一个模板可以遍历数据模型子对象中的键。如果子对象是一个数组,它工作正常。如果子对象是地图,则不是。没有数据显示。就像没有钥匙一样。需要注意的重要一点是,数组的元素或映射键是动态添加的。添加到模型中的观察者无论分配给映射键还是带通配符的数组索引都可以正常工作。并且对数据的检查表明所有预期的元素确实存在。

这是预期的行为吗? Ractive 文档中有一条注释说它只能响应预先存在的键。

如果这不是预期的行为,是否有我可以跟踪的错误编号?我无法根据 GitHub 搜索找到一个。

谢谢!

Ractive 不知道您想要遍历对象的属性(而不是将对象用作该部分内容的 context)。您可以通过使用 {{#each ...}} 关键字来帮助它:

{{#each entities[name]}}
  <li>{{title}}</li>
{{/each}}

查看演示:http://jsfiddle.net/Lj3wmega/

你也可以给块一个 :key 来让 Ractive 知道你想要迭代(或者在 #each 的情况下也可以访问键值):

{{#entities[name]:key}}
    <li>id: {{key}} title: {{title}}</li>
{{/}}