Ember.js 如果将多个参数传递给each helper,则其格式必须为#each foo in bar

Ember.js 如果将多个参数传递给each helper,则其格式必须为#each foo in bar,ember.js,ember-data,ember-local-storage,Ember.js,Ember Data,Ember Local Storage,我使用的是Ember 1.10.0、Ember Data beta 14.1和Ember LocalStorage Adapter 0.5.1。我有一个模板: <h1>Dracula's blog</h1> <ul> {{#each post in model}} <li>{{#link-to 'post' post}}{{post.title}}{{/link-to}}</li> {{/each}} </ul&

我使用的是Ember 1.10.0、Ember Data beta 14.1和Ember LocalStorage Adapter 0.5.1。我有一个模板:

<h1>Dracula's blog</h1>

<ul>
  {{#each post in model}}
    <li>{{#link-to 'post' post}}{{post.title}}{{/link-to}}</li>
  {{/each}}
</ul>

{{#link-to 'new-post' classNames="btn btn-primary"}}New scary post{{/link-to}}
我依靠Ember根据返回的模型数组自动创建ArrayController

当我加载路由时,我得到错误信息:

Uncaught Error: Assertion Failed: If you pass more than one argument to the each helper, it must be in the form #each foo in bar

如果我切换到
{{{{each model as{post}}
{{{each model}}
表单,我不会得到错误(第二个表单上的弃用警告除外)。

我刚刚发现我仍然在使用
Ember.handlebar.precompile(模板)编译模板,让我震惊的是它居然工作了!切换到
Ember.htmlbar.compile(模板)修复了该问题。感谢所有有用的评论,特别是@Kalman-试图在jsbin中复制,这让我找到了解决方案。

如果您将其更改为
{{{each model}}
并删除
post
的使用,您会得到任何错误吗?另外,该断言位于何处?也许您可以在不使用Ember LocalStorage Adapter Depdency的情况下运行相同的代码,以查看该库是否导致了问题。您是否已将每个模型的新语法
尝试为| post |
?是否可以使用Ember数据和修复程序创建建议在jsbin中复制您的问题,谢谢!我更新了帖子,注意到切换到
{{{{每个模型为{post}}
{{每个模型}
表单是有效的。我试过使用不同的适配器,所以我很确定这不是问题所在。
Uncaught Error: Assertion Failed: If you pass more than one argument to the each helper, it must be in the form #each foo in bar