【发布时间】:2017-05-25 13:03:55
【问题描述】:
我正在尝试为 ember 2 应用程序制作分页组件。 由于它是一个通用的分页组件,我想在许多不同的路线上使用它。因此,我需要以某种方式(在我的脑海中)提供我的路线名称,以便分页链接起作用。
我可以轻松地将我的路由名称(字符串)传递给组件:
{{pagination-component myRoute='myCurrentRouteName'}}。和
组件内部:{{link-to myRoute (query-params page=1)}}
它适用于以下页面: , Last >>.
但我还希望有一个选择框,其中包含指向所有页面的选项,如果用户选择一个页面,我可以使用类似于以下内容的 queryParams 转换到该路由:myRoute?page=selectedPage。
ember 的所有教程都说在组件内进行转换是禁忌。
但是,鉴于我希望我的分页是通用的,并且我不想在处理分页并提供相同精确转换的每条路线中都有操作,我该怎么做?
到目前为止,我发现我可以将'-routing' 注入到组件中,这可以用于组件内的转换,但由于某种原因它也不能安静地工作。另外,人们说它是私人的,不可靠的。
我还尝试使用操作制作 Route Mixin,这样我就可以使用 selectedPage 从组件中简单地 sendAction,但我不知道如何在我的 Mixin 中获取路由器(以便调用 router.transitionTo)。
【问题讨论】:
标签: ember.js ember-router ember-components