对我来说这是一个持续存在的概念问题。
我在一个选择框上设置了一个观察者,只有在用户选择其他选项时才会触发。 问题是,观察者在页面加载时触发,可能是因为数据正在加载到选择框中。
如果只有切换框的用户触发观察者,我将如何完成某些事情。也许是一个动作?如何用选择框完成?
模板:
{{view Ember.Select content=seasons
optionLabelPath="content.number"
optionValuePath="content.id"
selection=selectedSeason
}}
控制器:
seasons: [{id: 313, number: 1}, {id: 4325, number: 2}, {id: 56543, number: 3}],
selectedSeason: function(){
//last season
return this.get('seasons')[2]
}.property(),
selectedSeasonChanged: function(){
alert('This fires on page load! Bad!')
var seasonId = this.get('selectedSeason.id');
this.transitionTo('season', seasonId)
}.observes('selectedSeason')