[英]Ember.Select and Ember.Router
我在玩Ember.Router 。 在仔细阅读了Kasper Tidemann的出色的canonical-emberjs-routing-example示例之后 ,我想我大都知道了。
但是我想知道如何最好地将其与Ember.Select结合使用。
用例:我希望用户能够从下拉列表中选择模块,然后路由到正确的模块。
重新打开Ember.Select并覆盖valueDidChange怎么样 ? 还有更好的方法吗?
Em.Select.reopen({
valueDidChange: Ember.observer(function() {
this._super();
console.log('selection changed');
App.router.transitionTo(this.get('value'))
}, 'value')
});
在我的评论中:
如果您重新打开Em.Select,则将所做的更改应用到Ember应用程序中的所有Select控件。 您可能想创建一个扩展Ember.Select的视图,然后覆盖valueDidChange方法。
我的意思是类似这样的东西
var RoutableSelect = Ember.Select.extend({
valueDidChange: Ember.observer(function() {
this._super();
App.router.transitionTo(this.get('value'))
}, 'value');
});
这样一来,您就不会覆盖Ember.Select
的原始功能。 Ember.Select
为应用的其余部分选择。 现在,您可以对要退出此功能的特定视图使用RoutableSelect
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.