无法从视图中调用路由器操作

时间:2017-11-12 19:09:49

标签: ember.js

以下是我的路线:

this.route('produits', function(){ 
  this.route('new');
  this.route('edit', { path: '/:produit_id/edit' }, function() {
    this.route('documents');
  });
});

这是我在routes / produit / edit / documents.js中的行动:

actions: {
    refreshRoute() {
      this.refresh();
    }   
}

我在使用{{action refreshRoute}}后立即在document.hbs中导致以下错误:Assertion Failed: An action named 'refreshRoute' was not found in (generated produits.edit.documents controller)

为什么它在CRUD视图中使用相同的语法时不起作用?

1 个答案:

答案 0 :(得分:1)

您已在路线中定义了行动。要获得路线操作,您可以使用ember-route-action-helper。而不是{{action 'refreshRoute'}},您应该使用{{route-action 'refreshRoute'}},否则它将在控制器中查找操作。