我知道这是一个常见的问题,但我无法获得一个Ember.Select视图来触发其值的变化。我要么根据下拉列表中的选择更新selectedInvitation,要么调用将执行此行为的操作。
我在Binding Action in Ember.Select上尝试过变种而且没有任何运气。
模型/ uservisit.js
Models.Invitation = DS.Model.extend({
sameSeriesOpenInvitations: DS.hasMany('uservisit', {
async: true
})
});
控制器/用户/ invitations_controller.coffee
Visitdays.InvitationsController = Ember.ArrayController.extend
selectedInvitationObserver: (->
debugger
if @get('selectedInvitation')
@get('selectedInvitation')._data.event
).observes('selectedInvitation')
actions:
setSelectedInvitation: (invitation) ->
debugger
if invitation
@set 'selectedInvitation', invitation
invitations.emblem
.input-group.full-width
= view Em.Select contentBinding=selectedInvitation.sameSeriesOpenInvitations optionValuePath="content" optionLabelPath="content.event.startTimeFormatted" value="selectedInvitation" class="form-control"
答案 0 :(得分:0)
感谢@ ahmed.hoban让我朝着正确的方向前进。我不需要采取行动或任何事情。由于我想处理对象而不仅仅是id,我真的只需要将Ember.Select视图的选择属性更改为我想要观察的对象变化:
.input-group.full-width
= view Em.Select content=selectedInvitation.sameSeriesInvitations optionValuePath="content.id" optionLabelPath="content.visit.startTimeFormatted" selection=selectedInvitation class="form-control"