Ember:在 {{each}} 助手中出现 {{link-to}} 助手错误

Ember: {{link-to}} helper error when in {{each}} helper

link-to助手return出现以下错误:

Uncaught Error: each doesn't match link-to - 5:10

模板:

<script type="text/x-handlebars" id="actions">
  <div class='container-fluid'>
    <div class="row">    <!--  -->
      <div class="col-md-6 col-lg-4">    <!--  -->
        {{#each action in model}}
          {{link-to 'action' action}}{{action.id}}{{/link-to}}
        {{/each}}
        {{outlet}}
      </div>       
    </div>
  </div> 
</script>

路由器:

App.Router.map(function() {
  this.resource('application', function() {
    this.resource('actions', function() {
      this.resource('action', { path: '/:action_id'});
    });  
});

路线:

App.ActionsRoute = Ember.Route.extend({
  model: function() {
    return this.store.findAll('action');
    //return this.modelFor('user').get('actions');
  },

  setupController: function (controller, model) {
    controller.set('model', model);
  },

});  

我找不到问题所在。

这是一个很小的错误。当使用诸如 eachlink-to 之类的块助手时,您需要在前面使用 # 来调用它们,例如您对 {{#each}} 所做的那样。由于您在开始 link-to 时缺少它,解析器会看到 {{/link-to}} 并注意到它当前正在使用 each-block 而它们不匹配。只需在开始 'link-to' 前添加一个 #,它应该可以正常工作。

{{#each action in model}}
    {{#link-to 'action' action}}{{action.id}}{{/link-to}}
{{/each}}