Ember.js:如何以编程方式访问路线

时间:2016-04-03 16:06:55

标签: ember.js routes

由于控制器在Ember中已被弃用,我尝试在我的应用程序中删除它们。因此,在所有使用路径方法getControllerFor('nameOfTheRoute')来访问其他控制器方法或属性的情况下 我现在想打电话给getRouteFor('nameOfTheRoute'),但这种方法不存在。那么我该怎么做才能访问其他路线。我会非常感谢任何建议。

编辑: 我有一个应用程序,有点像Sequel Pro for Mac OS。这个应用程序有一个基本的应用程序布局,有两个区域,一个用于表(在左侧),另一个用于表格行(在右侧)。在这两个区域下面是用于对表或表行执行操作的按钮。在ember-speak中,这些按钮在应用程序路径中定义。只要没有选择表(因此没有表行且未加载行路由),行的按钮就不会激活。如果表行被加载到行区域,则按钮将被激活。这就是问题所在:当我点击行的按钮时,我想在行路径中执行操作。使用控制器时,我可以使用getControllerFor()并访问actions-hash。但是我如何在行路线上执行操作?或者如何更改我的设置以达到我的目标?

1 个答案:

答案 0 :(得分:0)

为什么需要访问其他路线?如果要访问父路由,请将操作发送到父路由。如果您要访问的那些路由不是父路由,则调用它们不合适,因为它与DDAU冲突。也许在这种情况下,您要访问的行为应该放在服务中。或者定义更适合该情况的组件。