基于Ember.Select更改的Ember.js路由

费利克斯

我有一个应用程序,该应用程序显示基于路由的结果列表(特别是使用Emberjs插件的查询参数)。这些结果来自服务器的响应,并且需要在模型上进行find()调用。我正在尝试使用Ember.select视图的下拉列表来构建查询参数以过滤结果,但是我似乎找不到解决此问题的方法,因为:

我不确定如何(或者我什至可以)从控制器创建事件。当前,我有一个自我创建的控制器(带有createWithMixins),该控制器从Ember.select视图接收选定的绑定:

App.SlotsFiltersController = Ember.Object.createWithMixins({
  weekday: null,
  kind: null,
  neighborhood: null,

  filtersChanged: function() {
    // I'd like to send an event to my current route here
  }.observes('weekday', 'kind', 'neighborhood')
});

哪个可以正确观察Ember.Select的更改,但无权访问路由器。

我还尝试了子类化Ember.Select视图,并在valueDidChange上发送事件。这确实到达了路由,但是该值尚未在控制器中更新(我将使用过时的数据进行过滤)。

最后,我尝试扩展由路由实例化的控制器。我对此没有成功(观察者事件似乎没有触发,而且我不确定如何调试)。

有什么好方法吗?我觉得我朝着错误的方向前进,并且在进行了永久搜索之后,我仍然没有找到仍是最新的类似信息(发布非全局App.Router)。

迈克·格拉索蒂(Mike Grassotti)

我不确定如何(或者我什至可以)从控制器创建事件。目前,我有一个自行创建的控制器(带有createWithMixins)...

好的,这就是问题所在。这样创建控制器绝不是一个好主意,相反,控制器应该由ember创建和管理。当ember创建控制器时,它将注入控制器所需的属性,例如指向路线的'target'属性。然后,您可以将事件发送到该路由,如下所示:

App.SlotsFiltersController = Ember.Controller.extend({
  weekday: null,
  kind: null,
  neighborhood: null,

  filtersChanged: function() {
    target.send('eventName')
  }.observes('weekday', 'kind', 'neighborhood')
});

App.SlotsFiltersView = Ember.SelectView.extend({})

现在从您的模板中,使用{{render}}帮助程序在SlotsFiltrersController的上下文中呈现SlotsFiltersView。

{{render slotsFilters}}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Ember.js在视图中更改路由器语句

来自分类Dev

ember.js更改模型时重置路由变量

来自分类Dev

Ember.js:基于承诺的属性

来自分类Dev

Ember.js:基于promise的属性

来自分类Dev

Ember.js如何使用视图Ember.Select multiple = true观察选择更改?

来自分类Dev

Ember.js中的多个独立路由

来自分类Dev

Ember.js全局路由/转换事件

来自分类Dev

Ember.js-从前缀URL路由

来自分类Dev

Ember.js中的嵌套路由

来自分类Dev

Ember.js-索引路由与“顶级”资源路由?

来自分类Dev

Ember.JS-无法过滤或基于计算的属性过滤

来自分类Dev

Ember.js:基于模型属性值的动态宽度

来自分类Dev

基于查询模型的 Ember 更改 normalizeResponse

来自分类Dev

如何基于异步关系对Ember Data模型进行Ember.js计算的属性?

来自分类Dev

如何基于异步关系对Ember Data模型进行Ember.js计算的属性?

来自分类Dev

Ember Js、Ember-Highcharts 不更新对 chartData 的更改

来自分类Dev

Ember.js-从子路由访问全局查询参数

来自分类Dev

我们可以从ember js中的组件路由吗?

来自分类Dev

仅在页面刷新时路由加载-Ember JS

来自分类Dev

从Ember.js中的路由中访问操作

来自分类Dev

嵌套路由错误Ember.JS和Rails

来自分类Dev

Ember.js:从嵌套路由调用ApplicationRoute的操作

来自分类Dev

集成测试Ember.js中的路由模板

来自分类Dev

如何在Ember.js中为路由生成URL

来自分类Dev

Ember.JS中嵌套资源的路由命名

来自分类Dev

Ember.js是否支持应用程序路由模型?

来自分类Dev

Ember.js中的自嵌套无限路由

来自分类Dev

Ember.Js使用TransitionTo路由进行动态分段

来自分类Dev

Ember.js中的事件顺序(applicationController和路由)

Related 相关文章

热门标签

归档